我使用请求库通过API与其他服务器进行通信。但是现在我需要同时发送多个(10个或更多)POST请求,并且只有在所有响应都是正确的情况下才能进一步移动。通常语法看起来有点像这样:Node.js请求 - 处理多个POST请求
var options = {
url: "",
method: "POST",
header: {...},
body: {...}
};
request(options, function(err,response,body)
{
}
但是现在我有一个对象数组而不是单个选项变量。有没有办法做到这一点?或者也许有另一个图书馆能够处理这个问题。
编辑:
var arrayOfIds = [];
const requests = [];
for(var i in range){
var options = {} // here goes all bodies and headers to send
requests.push(// push a request to array dynamically
request(options, function(err,response,body){
if(!err && response.statusCode == 201){
arrayOfIds.push(body.id);
}
}));
Promise.all(requests)
.then(function(res){
console.log(arrayOfIds); // this is empty
});
可能的复制(https://stackoverflow.com/questions/44636542/loop-through-asynchronous-request) –