axios拦截器判断401 / 全局给header添加token

https://www.cnblogs.com/guoxianglei/p/7084506.html

axios.interceptors.request.use(function (config) {    // 这里的config包含每次请求的内容
let token = getToken()
if (token) {
config.headers.Authorization = 'JWT '+ `${token}`;
}else {
window.location.pathname = '/login'
}
return config;
}, function (err) {
return Promise.reject(err);
})
//拦截器
axios.interceptors.response.use(
response => {
return response
},
error => {
if (error.response) {
switch (error.response.status) {
case 401:
// 返回 401 清除token信息并跳转到登录页面
confirm('过期')
router.replace({
path: '/login'
})
location.reload()
}
}
return Promise.reject(error.response.data) // 返回接口返回的错误信息
})
原文地址:https://www.cnblogs.com/wjhaaa/p/9366073.html