使用 promise all 并发axios post请求,且post请求携带不同的参数
时间: 2024-10-20 18:18:37 浏览: 32
Axios学习笔记之使用方法教程
在JavaScript中,特别是在处理并发网络请求时,`Promise.all()` 可以非常方便。当需要同时发送多个`axios.post`请求,并且每个请求携带不同的参数时,你可以这样做:
```javascript
// 假设我们有多个要发送的POST请求和对应参数
const requests = [
{ url: 'api1.com/data1', data: params1 },
{ url: 'api2.com/data2', data: params2 },
{ url: 'api3.com/data3', data: params3 },
];
// 创建一个新的Promise数组,每个元素都是一个axios.post请求
const promises = requests.map((request) => axios.post(request.url, request.data));
// 使用Promise.all等待所有请求完成
Promise.all(promises)
.then((responses) => {
// responses是一个包含所有响应结果的数组
responses.forEach((response, index) => {
console.log(`Request to ${requests[index].url} completed with data:`, response.data);
});
})
.catch((error) => {
// 所有请求都失败时,这里会捕获到错误
console.error('An error occurred:', error);
});
阅读全文