【发布时间】:2017-11-13 06:04:21
【问题描述】:
我在 node.js 中使用 node-rest-client 或请求库对服务进行 API 调用。我希望能够使用 let 和 scoping 来捕获响应但是只能获取请求...
在下面的代码中,当我控制台记录 newrequest 时,它会记录请求数据,当我在函数内部并记录 info.check.id 时,它会记录正确的数据。
var request = require('request');
var options = {
url: 'https://api.pingdom.com/api/2.1/checks/******',
headers: {
"App-Key": "******************"
}
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
var info = JSON.parse(body);
// console.log(info);
console.log(info.check.id)
// console.log(response.info);
}
else {
// console.log(body);
}
}
let newrequest = request(options, callback).auth('********', '********');
console.log(newrequest);
【问题讨论】:
-
从回调中返回
info -
在关闭函数之前将返回信息甚至基本字符串放在 if 语句或 if 语句之外,但不会改变记录 newrequest 的结果。
标签: node.js request httprequest