解决Token失效问题
2020-12-28 本文已影响0人
头秃的少年
问题:
-在登录状态下因登录时间过长,或者因被挤下线导出再次获取token而提示token失效
解决方式:
全段为axios拦截代码
this.axios.interceptors.response.use(
function(response) {
const result = response.data;
if (parseInt(result.code) === 300) {
sessionStorage.removeItem("sx_token");
router.push({ name: "Login" });
Toast("登录失效,请重新登录");
}
if (parseInt(result.code) === 1) {
return result.return;
} else {
return Promise.reject(new Error(result.msg) || "获取失败");
}
},
function(error) {
return Promise.reject(error);
}
);
后端定义登录失效的错误码为code 300 ,于是在axios拦截途中进行判断,一旦失效便删除sessionStorage中储存的token,并提示并跳转至登录页(Login)