我一直在尝试许多解决方案,但没有任何帮助...我有函数,它执行 GET API 请求并返回 JSON 解析的响应。 Console.log 可以工作并返回解析的响应,但是当我用 return 替换它时,它停止工作并记录“响应未定义”。我还尝试在函数外部声明“dt”。
function apiRequest(apiPath) {
const https = require(nodeprotocol);
var req = https.request(apiPath, res => {
res.on('data', dt => {
return JSON.parse(dt); // edited from: return dt;
});
});
req.on('error', error => {
console.error(error);
});
req.end();
}
console.log('Response is ' + apiRequest('api data here'));
您似乎没有发回正确的请求。您可能希望将响应作为 json 发送,而不是返回 dt。可能看起来像这样:
var req = https.request(apiPath, res => {
res.on('data', dt => {
res.json(dt);
});
});