修复登录失效后多次请求提示多次弹窗问题
This commit is contained in:
parent
6353f4ff09
commit
6ef899d000
|
@ -7,6 +7,8 @@ import { tansParams, blobValidate } from "@/utils/ruoyi";
|
|||
import { saveAs } from 'file-saver'
|
||||
|
||||
let downloadLoadingInstance;
|
||||
// 是否显示重新登录
|
||||
let isReloginShow;
|
||||
|
||||
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
|
||||
// 创建axios实例
|
||||
|
@ -48,16 +50,25 @@ service.interceptors.response.use(res => {
|
|||
return res.data
|
||||
}
|
||||
if (code === 401) {
|
||||
if (!isReloginShow) {
|
||||
isReloginShow = true;
|
||||
MessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', {
|
||||
confirmButtonText: '重新登录',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}
|
||||
).then(() => {
|
||||
isReloginShow = false;
|
||||
store.dispatch('LogOut').then(() => {
|
||||
// 如果是登录页面不需要重新加载
|
||||
if (window.location.hash.indexOf("#/login") != 0) {
|
||||
location.href = '/index';
|
||||
}
|
||||
})
|
||||
}).catch(() => {});
|
||||
}).catch(() => {
|
||||
isReloginShow = false;
|
||||
});
|
||||
}
|
||||
return Promise.reject('无效的会话,或者会话已过期,请重新登录。')
|
||||
} else if (code === 500) {
|
||||
Message({
|
||||
|
|
Loading…
Reference in New Issue