$.ajax 同时请求两个不同的接口 请求参数也不同 返回值放在一个值下面
时间: 2023-06-19 21:09:50 浏览: 175
可以使用 `Promise.all()` 方法来实现同时请求两个不同接口,并将返回值放在一个值下面。示例代码如下:
```javascript
// 请求接口1
const request1 = $.ajax({
url: '接口1的地址',
method: 'GET',
data: { 参数1: 值1, 参数2: 值2 }
});
// 请求接口2
const request2 = $.ajax({
url: '接口2的地址',
method: 'POST',
data: { 参数3: 值3, 参数4: 值4 }
});
// 将两个请求放在 Promise.all() 中
Promise.all([request1, request2])
.then(([response1, response2]) => {
// 在这里处理两个接口的返回值
console.log(response1); // 接口1返回的数据
console.log(response2); // 接口2返回的数据
const combinedResponse = { response1, response2 }; // 将两个返回值放在一个值下面
console.log(combinedResponse); // 打印合并后的返回值
})
.catch(error => {
// 处理错误
console.log(error);
});
```
在上面的代码中,`Promise.all()` 方法接收一个包含两个请求的数组,然后等待两个请求都完成后返回结果。当两个请求都成功完成时,它们的返回值会作为一个数组传递给 `.then()` 方法中的回调函数,我们可以使用数组解构来获取每个请求的返回值。然后,我们将这两个返回值合并到一个对象中,并将其打印出来。如果其中一个请求失败,`.catch()` 方法会捕获错误并处理它。
阅读全文