axios发送并发请求

axios发送并发请求

    有时候需要一次性发送多个网路请求,等到所有请求都成功返回之后再进行下一步操作

  方法一: 自行封装函数,每个网络请求结束后设置一个flag,检测到所有的flag都返回之后再进行下一步操作

  方法二: 使用Promise.all([请求1, 请求2,...])来实现

  方法三: axios实现并发请求,类似于Promise.all的使用方式

    语法:

      axios.all([请求1,请求2,...]).then(results)

                            // 返回结果results是一个数组,按顺序保存各个请求返回的结果

                     示例:

axios.all([

    axios({
        url: 'http://123.207.32.32:8000/home/multidata',
    }),
    axios({
        url: 'http://123.207.32.32:8000/home/data',
        params:{
            type: 'sell',
            page: 5
        }
    })
]).then(results => {
    console.log(results);
})        
View Code

                        注:返回的结果可以用axios.spread()来解构,用的较少

posted @ 2020-07-04 09:44  CarreyB  阅读(288)  评论(0编辑  收藏  举报