sách gpt4 ai đã đi

Yêu cầu Node.js - Xử lý nhiều yêu cầu POST

In lại 作者:行者123 更新时间:2023-12-01 03:08:44 37 4
mua khóa gpt4 Nike

我使用请求库通过 API 与其他服务器进行通信。但现在我需要同时发送多个(10 个或更多)POST 请求,并且只有在所有响应都正确的情况下才能进一步前进。通常语法看起来有点像这样:

var options = {
url: "",
method: "POST",
header: {...},
body: {...}
};

request(options, function(err,response,body)
{
}

但现在我有了一个对象数组,而不是单个选项变量。有没有办法做到这一点?或者也许有另一个库能够处理这个问题。

biên tập:

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
});

1 Câu trả lời

有几种方法可以解决这个问题:

  • 异步库,方法并行
  • Promise.all

要将您的请求切换为 Promise,请使用 request 模块 - request-promise。在代码中它将如下所示:

const request = require('request-promise');

// Note, you don't assign callback here
const promises = [
request.post({...}),
request.post({...}),
request.post({...})
];

// And then you simply do Promise.all
Promise.all(promises).then(console.log);

关于javascript - Node.js 请求 - 处理多个 POST 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45995585/

37 4 0
Bài viết được đề xuất: javascript - 递减进度条
Bài viết được đề xuất: javascript - fullpage.js:在容器内使用鼠标指针滚动时禁用页面滚动
Bài viết được đề xuất: javascript - 避免 ImmutableJS Map 将数组转换为 List
Bài viết được đề xuất: javascript - 如何定位特定的标签?
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com