axios响应式拦截器和普通拦截器的区别
时间: 2023-12-17 20:28:24 浏览: 120
axios响应式拦截器和普通拦截器的区别在于它们拦截的阶段不同。普通拦截器可以拦截请求和响应,而响应式拦截器只能拦截响应。具体来说,普通拦截器包括请求拦截器和响应拦截器,请求拦截器在请求发送前拦截请求并对其进行处理,响应拦截器在接收到响应后拦截响应并对其进行处理。而响应式拦截器只能在接收到响应后拦截响应并对其进行处理。
以下是axios普通拦截器和响应式拦截器的示例代码:
1. axios普通拦截器
```javascript
// 创建axios实例
const instance = axios.create({
baseURL: 'http://api.example.com',
timeout: 1000,
});
// 添加请求拦截器
instance.interceptors.request.use(
config => {
// 在发送请求之前做些什么
return config;
},
error => {
// 对请求错误做些什么
return Promise.reject(error);
}
);
// 添加响应拦截器
instance.interceptors.response.use(
response => {
// 对响应数据做点什么
return response;
},
error => {
// 对响应错误做点什么
return Promise.reject(error);
}
);
```
2. axios响应式拦截器
```javascript
// 创建axios实例
const instance = axios.create({
baseURL: 'http://api.example.com',
timeout: 1000,
});
// 添加响应拦截器
instance.interceptors.response.use(
response => {
// 对响应数据做点什么
return response;
},
error => {
// 对响应错误做点什么
return Promise.reject(error);
}
);
```
阅读全文