From 6ef899d0006034a031277bd439e67432d9b4f7d8 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期五, 31 十二月 2021 10:03:54 +0800
Subject: [PATCH] 修复登录失效后多次请求提示多次弹窗问题
---
ruoyi-ui/src/utils/request.js | 17 ++++++++++++++---
1 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/ruoyi-ui/src/utils/request.js b/ruoyi-ui/src/utils/request.js
index 8ee43cc..12e535a 100644
--- a/ruoyi-ui/src/utils/request.js
+++ b/ruoyi-ui/src/utils/request.js
@@ -7,6 +7,8 @@
import { saveAs } from 'file-saver'
let downloadLoadingInstance;
+// 是否显示重新登录
+let isReloginShow;
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
// 创建axios实例
@@ -48,16 +50,25 @@
return res.data
}
if (code === 401) {
- MessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', {
+ if (!isReloginShow) {
+ isReloginShow = true;
+ MessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', {
confirmButtonText: '重新登录',
cancelButtonText: '取消',
type: 'warning'
}
).then(() => {
+ isReloginShow = false;
store.dispatch('LogOut').then(() => {
- location.href = '/index';
+ // 如果是登录页面不需要重新加载
+ if (window.location.hash.indexOf("#/login") != 0) {
+ location.href = '/index';
+ }
})
- }).catch(() => {});
+ }).catch(() => {
+ isReloginShow = false;
+ });
+ }
return Promise.reject('无效的会话,或者会话已过期,请重新登录。')
} else if (code === 500) {
Message({
--
Gitblit v1.9.2