fix: 移除安装状态永久缓存,修复数据库重置后无法跳转安装页;优化登录401错误提示

This commit is contained in:
2026-05-27 12:15:25 +08:00
parent 66199a692d
commit 692c104279
2 changed files with 12 additions and 10 deletions
-3
View File
@@ -75,15 +75,12 @@ const router = createRouter({
routes, routes,
}) })
let installedChecked = false
let isInstalled = false let isInstalled = false
async function checkInstalled() { async function checkInstalled() {
if (installedChecked) return isInstalled
try { try {
const res: any = await systemApi.checkInstalled() const res: any = await systemApi.checkInstalled()
isInstalled = res.installed isInstalled = res.installed
installedChecked = true
return isInstalled return isInstalled
} catch { } catch {
return true return true
+12 -7
View File
@@ -26,14 +26,19 @@ api.interceptors.response.use(
(error) => { (error) => {
const message = error.response?.data?.error || error.message || 'Request failed' const message = error.response?.data?.error || error.message || 'Request failed'
if (error.response?.status === 401) { if (error.response?.status === 401) {
const hadToken = !!localStorage.getItem('token') const isLoginRequest = error.config?.url?.includes('/auth/login')
localStorage.removeItem('token') if (isLoginRequest) {
localStorage.removeItem('user')
if (hadToken) {
ElMessage.error('登录已过期,请重新登录')
router.push('/login')
} else {
ElMessage.error(message) ElMessage.error(message)
} else {
const hadToken = !!localStorage.getItem('token')
localStorage.removeItem('token')
localStorage.removeItem('user')
if (hadToken) {
ElMessage.error('登录已过期,请重新登录')
router.push('/login')
} else {
ElMessage.error(message)
}
} }
} else { } else {
ElMessage.error(message) ElMessage.error(message)