axios拦截器封装返回数据
时间: 2023-08-12 20:02:41 浏览: 97
对于封装 axios 拦截器返回数据,可以通过创建一个 axios 实例,并在实例中定义拦截器。以下是一个示例:
```javascript
import axios from 'axios';
// 创建 axios 实例
const instance = axios.create({
baseURL: 'https://api.example.com', // 设置请求的基础URL
});
// 请求拦截器
instance.interceptors.request.use(
config => {
// 在发送请求之前做些处理,例如添加请求头等
return config;
},
error => {
// 处理请求错误
return Promise.reject(error);
}
);
// 响应拦截器
instance.interceptors.response.use(
response => {
// 在响应数据之前做些处理,例如统一处理错误码等
return response.data;
},
error => {
// 处理响应错误
return Promise.reject(error);
}
);
export default instance;
```
在上述示例中,我们使用 `axios.create()` 创建了一个 axios 实例 `instance`。然后,通过 `instance.interceptors.request.use()` 和 `instance.interceptors.response.use()` 分别定义了请求拦截器和响应拦截器。
在请求拦截器中,我们可以对请求进行一些额外处理,例如添加请求头等。在响应拦截器中,我们可以对返回的数据进行处理,例如统一处理错误码等。
最后,我们通过 `export default instance` 导出这个实例,以便在其他地方使用。这样,我们就可以通过导入这个实例来发送请求,并且拦截器会自动处理相应的逻辑。
阅读全文