[代码完善](v2.5): v2.5 修改Token过期的提示
由原来的弹窗提示改为登录界面消息提示
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
import axios from 'axios'
|
||||
import router from '@/router/routers'
|
||||
import { Notification, MessageBox } from 'element-ui'
|
||||
import { Notification } from 'element-ui'
|
||||
import store from '../store'
|
||||
import { getToken } from '@/utils/auth'
|
||||
import Config from '@/settings'
|
||||
import Cookies from 'js-cookie'
|
||||
|
||||
// 创建axios实例
|
||||
const service = axios.create({
|
||||
@@ -55,18 +56,10 @@ service.interceptors.response.use(
|
||||
}
|
||||
if (code) {
|
||||
if (code === 401) {
|
||||
MessageBox.confirm(
|
||||
'登录状态已过期,您可以继续留在该页面,或者重新登录',
|
||||
'系统提示',
|
||||
{
|
||||
confirmButtonText: '重新登录',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}
|
||||
).then(() => {
|
||||
store.dispatch('LogOut').then(() => {
|
||||
location.reload() // 为了重新实例化vue-router对象 避免bug
|
||||
})
|
||||
store.dispatch('LogOut').then(() => {
|
||||
// 用户登录界面提示
|
||||
Cookies.set('point', 401)
|
||||
location.reload()
|
||||
})
|
||||
} else if (code === 403) {
|
||||
router.push({ path: '/401' })
|
||||
|
||||
@@ -79,8 +79,12 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
// 获取验证码
|
||||
this.getCode()
|
||||
// 获取用户名密码等Cookie
|
||||
this.getCookie()
|
||||
// token 过期提示
|
||||
this.point()
|
||||
},
|
||||
methods: {
|
||||
getCode() {
|
||||
@@ -138,6 +142,18 @@ export default {
|
||||
return false
|
||||
}
|
||||
})
|
||||
},
|
||||
point() {
|
||||
const point = Cookies.get('point') !== undefined
|
||||
if (point) {
|
||||
this.$notify({
|
||||
title: '提示',
|
||||
message: '当前登录状态已过期,请重新登录!',
|
||||
type: 'warning',
|
||||
duration: 8000
|
||||
})
|
||||
Cookies.remove('point')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user