如何实现 axios 错误拦截

一、流程概述

为了实现 axios 错误拦截,我们需要按照以下步骤进行操作:

pie
    title 错误拦截流程
    "创建axios实例" : 1
    "定义错误处理函数" : 2
    "使用axios拦截器" : 3

二、详细步骤

1. 创建axios实例

在项目中创建一个 axios 实例,并配置一些基本信息。

```javascript
// 引入axios
import axios from 'axios';

// 创建axios实例
const instance = axios.create({
  baseURL: ' // 设置请求的基础url
  timeout: 5000, // 设置超时时间
});

### 2. 定义错误处理函数

定义一个统一的错误处理函数,用于处理请求响应中的错误信息。

```markdown
```javascript
// 定义错误处理函数
const errorHandler = (error) => {
  if (error.response) {
    // 请求被服务器接受,状态码不是2xx
    console.log('Error status:', error.response.status);
    console.log('Error data:', error.response.data);
  } else if (error.request) {
    // 请求被发出,但没有收到响应
    console.log('No response from server');
  } else {
    // 请求出错
    console.log('Error:', error.message);
  }
};

### 3. 使用axios拦截器

在 axios 实例中使用拦截器,来实现错误的拦截和处理。

```markdown
```javascript
// 请求拦截器
instance.interceptors.request.use((config) => {
  // 可以在发送请求之前做一些处理
  return config;
}, (error) => {
  // 请求错误时处理
  console.log('Request error:', error);
  return Promise.reject(error);
});

// 响应拦截器
instance.interceptors.response.use((response) => {
  // 对响应数据做一些处理
  return response;
}, (error) => {
  // 响应错误时处理
  errorHandler(error);
  return Promise.reject(error);
});

## 三、总结

通过上面的步骤,我们成功地实现了 axios 的错误拦截功能。当发送请求出现错误时,我们可以统一地处理错误信息,提高了代码的可维护性和可读性。

希望以上内容能帮助你理解并实现“axios 错误拦截”的功能,如果有任何疑问或者需要进一步帮助,欢迎随时向我提问。祝你在学习和工作中取得更多进步!