有没有办法在axios.all中添加超时?

时间:2019-08-16 01:52:44

标签: javascript axios

我们可以在配置对象的每个请求中添加超时,如下所示:

const instance = axios.create({
  baseURL: 'https://some-domain.com/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
});

是否有一种方法可以在axios.all()请求中添加多个请求的超时,我希望所有这些超时都可以在10秒内完成。目前,我在每个请求中都设置了超时。有没有一种方法可以一次将所有请求的超时时间设置。

1 个答案:

答案 0 :(得分:1)

更好的方法是与包https://www.npmjs.com/package/axios-cancel一起使用简单的JavaScript超时功能

例如:

import axios from 'axios';
import axiosCancel from 'axios-cancel';

axiosCancel(axios, {
  debug: false // default
});

axios.all..

    setTimeout(()=>{
          axios.cancelAll();
    },3000) //will cancel all axios requests after 3 seconds