我在这个地方怎么获得并判断状态码?
接口配置:
import axios from 'axios';
import router from '../router/index.js'
/* 根据环境变量区分接口默认地址 */
switch (process.env.NODE_ENV) {
case "production": // 生产地址
axios.defaults.baseURL = "";
break;
case "test": // 测试环境
axios.defaults.baseURL = "";
break;
default: // 默认走本地开发环境
axios.defaults.baseURL = "";
}
/* 设置超时时间和跨域是否允许携带凭证 */
// axios.defaults.timeout = 10000; // 十秒
axios.defaults.withCredentials = true;
/* 设置请求传递数据的格式 */
axios.defaults.headers.post['Content-Type'] = 'application/json'; // 后台需要的请求头数据格式
axios.defaults.headers.put['Content-Type'] = 'application/x-www-form-urlencoded';
axios.defaults.transformRequest = function (data) {
return JSON.stringify(data)
}
/* 设置请求拦截器 */
axios.interceptors.request.use(config => {
let token = localStorage.getItem('token');
token && (config.headers.Authorization = token);
return config;
}, error => {
return Promise.reject(error);
});
/* 响应拦截器 */
axios.interceptors.response.use(response => {
return response.data;
}, error => {
let { response } = error;
if (response) {
switch (response.status) {
case 401:
router.push('/login')
break;
case 403:
router.push('/403')
break;
case 404:
router.push('/404')
break;
case 500:
router.push('/500')
break;
}
} else {
if (!window.navigator.onLine) {
return;
}
return Promise.reject(error);
}
});
export default axios;~~~~
这里返回 response,当然建议你复制一下,不然给别的地方都干死了