gpt4 book ai didi

json - 如何在 Node.js 代理中返回 JSON?

转载 作者:太空宇宙 更新时间:2023-11-03 23:31:06 26 4
gpt4 key购买 nike

我必须将请求代理到 Dota 2 API。经过一番研究,我找到了一种在我使用 MEAN 堆栈构建的 API 中实现此目的的方法。但是,我不知道如何从请求返回数据。

这是我的 Node 服务器代码中的路线:

   router.get('/api/allheros', function (req, res) {
Https.get('https://api.steampowered.com/IEconDOTA2_570/GetHeroes/v0001/?key=FB900D42DC33F4B4FCC62F6C7779BE5D', function (res) {
var str = '';
console.log('Response is ' + res.statusCode);

res.on('data', function (chunk) {
str += chunk;
});

res.on('end', function () {
console.log(str); //This console logs all the heros correctly
});

});
});

控制台日志可以工作,但我需要将数据返回到前端。

最佳答案

您需要做的就是将结果解析为 JSON 对象并使用 res.json() 将其发送回来。修改您的代码如下,

router.get('/api/allheros', function (req, res) {
Https.get('https://api.steampowered.com/IEconDOTA2_570/GetHeroes/v0001/?key=FB900D42DC33F4B4FCC62F6C7779BE5D', function (response) {
var str = '';
console.log('Response is ' + response.statusCode);

response.on('data', function (chunk) {
str += chunk;
});

response.on('end', function () {
res.json(JSON.parse(str));
});

});
});

注意:内部函数中的 res 必须更改为 response,这样它就不会屏蔽外部函数的 res 参数。

关于json - 如何在 Node.js 代理中返回 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38240418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com