如何使用axios设置响应拦截器和请求拦截器
请求和响应拦截器
axios
提供了请求和响应拦截器,可以在请求发送前或响应接收后对数据进行处理。
请求拦截器
import axios from 'axios';
axios.interceptors.request.use(
config => {
// 在发送请求之前做些什么
console.log('请求拦截器:', config);
return config;
},
error => {
// 对请求错误做些什么
return Promise.reject(error);
}
);
响应拦截器
import axios from 'axios';
axios.interceptors.response.use(
response => {
// 对响应数据做些什么
console.log('响应拦截器:', response);
return response;
},
error => {
// 对响应错误做些什么
if (error.response) {
// 请求已发出,但服务器响应的状态码不在 2xx 范围内
console.error('服务器响应错误:', error.response.status);
} else {
// 某种请求错误(如网络问题)
console.error('请求错误:', error.message);
}
return Promise.reject(error);
}
);