📅  最后修改于: 2023-12-03 15:29:33.426000             🧑  作者: Mango
axios.filter
是一个Axios拦截器过滤器,它允许你拦截请求或响应,并且在它们到达服务前或者在发送响应之前对其进行修改。
npm install axios --save
import axios from 'axios';
// 添加请求拦截器
axios.interceptors.request.use((config) => {
// 每个请求都会进入这里
console.log('请求拦截器', config);
return config;
}, (error) => {
// 处理请求错误
console.error('请求错误', error);
});
// 添加响应拦截器
axios.interceptors.response.use((response) => {
// 每个响应都会进入这里
console.log('响应拦截器', response);
return response;
}, (error) => {
// 处理响应错误
console.error('响应错误', error);
});
// 现在可以发送请求了
axios.get('https://example.com/api/data')
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
import axios from 'axios';
const instance = axios.create();
// 添加请求拦截器
instance.interceptors.request.use((config) => {
// 每个请求都会进入这里
console.log('请求拦截器', config);
return config;
}, (error) => {
// 处理请求错误
console.error('请求错误', error);
});
// 添加响应拦截器
instance.interceptors.response.use((response) => {
// 每个响应都会进入这里
console.log('响应拦截器', response);
return response;
}, (error) => {
// 处理响应错误
console.error('响应错误', error);
});
// 可以通过 instance 发送请求
instance.get('https://example.com/api/data')
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
import axios from 'axios';
const instance = axios.create();
// 添加请求拦截器
const requestInterceptor = instance.interceptors.request.use((config) => {
// 每个请求都会进入这里
console.log('请求拦截器', config);
return config;
}, (error) => {
// 处理请求错误
console.error('请求错误', error);
});
// 添加响应拦截器
const responseInterceptor = instance.interceptors.response.use((response) => {
// 每个响应都会进入这里
console.log('响应拦截器', response);
return response;
}, (error) => {
// 处理响应错误
console.error('响应错误', error);
});
// 移除请求拦截器
instance.interceptors.request.eject(requestInterceptor);
// 移除响应拦截器
instance.interceptors.response.eject(responseInterceptor);