美文网首页
axios在Browser中的错误处理类型

axios在Browser中的错误处理类型

作者: 大冬桥 | 来源:发表于2021-07-05 11:36 被阅读0次

axios是用于Browser和node.js的Promise的HTTP client。在Browser中,主要是对XMLHttpRequest对象的封装。

axios在Browser中错误类型
  • 网络错误,基于XMLHttpRequest error事件,error.message的值为"Network Error"。
  • 超时错误,基于XMLHttpRequest timeout事件,"timeout of xxxms exceeded",xxx为配置的超时时间。
  • 响应错误,根据返回的状态码,决定是否抛出错误。validateStatus 配置选项,定义应该抛出错误的 HTTP 代码。
//默认配置
 validateStatus: function (status) {
    return status >= 200 && status < 300; 
  }
  • 请求取消,基于XMLHttpRequest abort 方法,使用axios.isCancel(error)来判断是否为一个请求取消错误。
const CancelToken = axios.CancelToken;
const source = CancelToken.source();

axios.get('/user/12345', {
  cancelToken: source.token
}).catch(function (thrown) {
  if (axios.isCancel(thrown)) {
    console.log('Request canceled', thrown.message);
  } else {
    // handle error
  }
});

axios.post('/user/12345', {
  name: 'new name'
}, {
  cancelToken: source.token
})

// cancel the request (the message parameter is optional)
source.cancel('Operation canceled by the user.');

相关文章

网友评论

      本文标题:axios在Browser中的错误处理类型

      本文链接:https://www.haomeiwen.com/subject/hsmbultx.html