我们都知道Axios的响应拦截器

axios.interceptors.response.use(
  function (response) {
    // 对响应数据做点什么
    return response;
  },
  function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
  }
);

 

但是打印error却是 "Uncaught (in promise) Error: Request failed with status code 404" 这种文字报错。没办法根据请求的参数做一些特定的error逻辑处理,看API文档也没有相关的说明,百度也没有搜到。

其实error处理函数中也是有response的,这个参数隐藏的比较深,我们用 Object.keys( error ) 就能看到,error也是有属性名的:["config", "request", "response", "isAxiosError", "toJSON"],这里就可以愉快的用error.response去做判断啦

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐