【发布时间】:2015-04-26 18:57:23
【问题描述】:
我正在进行这样的 JSON 调用:
var desc = getItemDescriptions(xxx);
function getItemDescriptions(xxx) {
var url = "xxx;
var info = {};
request({
url: url,
json: true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
info ["..."] = body.result[xxx].yyy;
info ["..."] = body.result[xxx].yyy;
info ["..."] = body.result[xxx].yyy;
info ["..."] = body.result[xxx].yyy;
info ["..."] = body.result[xxx].yyy;
}
})
return info;
}
我的问题是,JSON 请求需要一些时间才能得到响应......而且我的函数不会等待这个响应。该函数无需等待即可返回空数组。
如何等待响应然后返回填充的数组?
谢谢
【问题讨论】:
-
你用的是什么框架? “请求”函数在哪里定义?
-
@navotgil npmjs.com/package/request
-
在请求完成时添加一个事件触发器,也许?监听并在触发时执行。
-
来自 npm 文档:request.get('google.com/img.png').on('response', function(response) { console.log(response.statusCode) // 200 console.log(response.headers['content-type ']) // '图片/png' })
标签: javascript json node.js