前端vue请求多个接口并且同时返回
时间: 2023-06-25 14:07:42 浏览: 135
可以使用Promise.all()方法来同时发送多个请求并等待它们全部返回。示例代码如下:
```javascript
// 定义多个请求的url
const urls = [
'https://api.example.com/user',
'https://api.example.com/posts',
'https://api.example.com/comments'
]
// 使用map方法对每个url发送请求,并返回Promise对象
const promises = urls.map(url => axios.get(url))
// 使用Promise.all()方法等待所有请求返回
Promise.all(promises).then(responses => {
console.log(responses[0].data) // 第一个请求的响应数据
console.log(responses[1].data) // 第二个请求的响应数据
console.log(responses[2].data) // 第三个请求的响应数据
}).catch(error => {
console.error(error)
})
```
在以上示例中,我们使用axios库发送请求并使用Promise.all()方法等待所有请求返回。当所有请求都成功返回时,Promise.all()方法会返回一个数组,包含每个请求的响应数据。如果有任何一个请求失败,则Promise.all()方法会直接跳转到catch()方法,我们可以在catch()方法中处理错误。
阅读全文