如何解决axios在for循环中使用promises,仅获得最后结果
我一直在尝试在for循环内生成一些axios post调用,以及使用promise,但是我得到的所有结果都是最后一个
then(() =>{
var final_result=[];
var promises=[];
for(var x = 0; x < first_result.length; x++){
//final_result.push("loop index before entering promise push "+x);
var secondary_query=JSON.stringify({"query": {"product_id ": {"$eq": first_result[x]}}});
promises.push(
axios.post("https://example.com/api/objects/query?per_page=100&page=1",secondary_query,{headers:{'Authorization':oscAuth}}).then(function(response){
final_result.push("loop index "+x);
//conversation.logger().info(secondary_query);
})
)
}
////
Promise.all(promises).then(() => {
//user var final_result do some work here
});
////
}
最后,当我尝试使用final_result的值时,我得到的只是“循环索引5”,这是最后一个:/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。