在写axios请求的时候,经常会遇到网络延迟需要设置请求超时,但是往往有的小伙伴设置了timeout却不生效,如下图:

 axios({
    method: 'post',
    url: ' ',
    data: data,
    timeout: 10000
  }).then(res => {
    if (res) {
      //请求成功后返回的参数
      console.log(res)
    }
  }).catch(error => {
    if (error.config.timeout == 10000) {
      Message.error('请求超时,请检查网络')
    } else {
      console.log(error)
    }
  })

解决方法很简单,只需要实例化一下axios就行了;


```javascript
const HTTP_AXIOS = axios.create()HTTP_AXIOS ({
    method: 'post',
    url: ' ',
    data: data,
    timeout: 10000
  }).then(res => {
    if (res) {
      //请求成功后返回的参数
      console.log(res)
    }
  }).catch(error => {
    if (error.config.timeout == 10000) {
      Message.error('请求超时,请检查网络')
    } else {
      console.log(error)
    }
  })

这样就可以实现提示请求超时的功能了



Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐