react axios请求封装一个全面的拦截器给我
时间: 2023-10-08 21:14:47 浏览: 162
axios封装,使用拦截器统一处理接口,超详细的教程(推荐).docx
5星 · 资源好评率100%
可以的,关于axios请求的全面拦截器的封装,您可以参考以下代码:
```javascript
import axios from 'axios';
// 创建axios实例
const service = axios.create({
baseURL: process.env.VUE_APP_BASE_API, // api的base_url
timeout: 5000 // 请求超时时间
});
// request拦截器
service.interceptors.request.use(
config => {
// 在发送请求之前做一些处理,如添加token等
return config;
},
error => {
// 发送请求失败处理
console.log(error);
Promise.reject(error);
}
);
// respone拦截器
service.interceptors.response.use(
response => {
const res = response.data;
// 判断请求是否成功
if (res.code !== 200) {
// 请求失败处理,如错误提示等
return Promise.reject(res.message || 'Error');
} else {
// 请求成功处理
return res;
}
},
error => {
// 响应失败处理
console.log(`err${error}`);
return Promise.reject(error);
}
);
export default service;
```
以上代码实现了一个全面的请求拦截器和响应拦截器,您可以根据需求进行修改和优化。
阅读全文