【发布时间】:2016-09-08 09:17:31
【问题描述】:
此代码与我的代码结构相同:
for (var i in UserNameArray)
{
var Urls = "https://some online api"+UserNameArray[i]+"api key";
//the url changes by plugging in the next array value every iteration.
request({
url: Urls,
json: true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
console.log(body);
}
})
}
它正确地从 URL 返回一个 json,但它打印出来,每个迭代的请求首先返回。如何更改我的代码,以便它按照请求的顺序打印出请求?这很重要,因为我必须使用来自 UserNameArray 的特定值遍历特定 JSON。
【问题讨论】:
-
得到body之后除了console你到底想做什么?
-
我知道你可以用这个库实现它caolan.github.io/async
-
在for循环上方声明了另一个名为IdResultArray的数组,那我就说IdResultArray [i] = body[UserNameArray[i]].id。然后我将使用它更新我的数据库,并使用 express 和 EJS 将其输出到网页。
-
其实这是我的 async.waterfall 中的一个函数,async 模块的哪一部分会帮我解决这个问题?
标签: json node.js httprequest