token过期重新登录后返回之前操作页面

436 阅读1分钟
//在axios的二次封装里面
//在响应拦截器后面写以下代码
if (error.response.status === 401) { // 身份过期
    // token续签方式1:  去登录页重新登录, token无用, 清掉-确保路由守卫if进不去
    store.commit('setToken', '')
    // router.history.current.fullPath,获取跳转前的地址,放到登录页面地址的后面
    router.push({ path: "/index/login", query: { path:router.history.current.fullPath } })
} else {
    return Promise.reject(error)
}
 
 
// 在登录页成功函数内写入以下代码 
// 跳转到index页面
this.$router.replace({
    // this.$route.query.path获取原来的地址,没有则走'/index'
    path: this.$route.query.path || '/index'
})

tips:axios二次封装里面的store 和router 是和入口文件main.js引入的同一个实例