axios提供了拦截器,用于在发送每次请求或者得到响应后,进行对应的处理。
如何使用拦截器?
export function request(config,success,failure) {
//1、创建axios的实例
const instance = axios.create({
baseURL: 'http://123.207.32.32:8000',
timeout: 5000
})
//2.axios的拦截器
//2.1 请求拦截
axios.interceptors.request.use(config =>{
console.log(config);
//做一些操作
//1、比如config的信息不符合服务器的要求,要对config做一些处理
//2、比如每次发送网络请求时,都希望在界面中显示一个请求的图标
//3、某些网络请求必须携带一些特殊的信息
return config;
},err => {
console.log(err);
})
//2.2 响应拦截
axios.interceptors.response.use(res => {
console.log(res);
return res.data; //需要将结果返回
},error => {
console.log(error);
})
return instance(config);
}