From a259e0ac1ad87ad702394da9895364f105cdf2ad Mon Sep 17 00:00:00 2001 From: cat_shark <1716967236@qq.com> Date: Sat, 4 Jul 2026 11:01:09 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E7=99=BB=E5=BD=95)=EF=BC=9Atoken=20?= =?UTF-8?q?=E8=BF=87=E6=9C=9F=E7=9B=B4=E6=8E=A5=E8=B7=B3=E8=BD=AC=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E9=A1=B5=EF=BC=8C=E4=B8=8D=E5=86=8D=E5=BC=B9=E7=A1=AE?= =?UTF-8?q?=E8=AE=A4=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 后端 CommonResult 包装设计保留原样,不引入自定义业务码。 改法:handleError 中检测到 401 后直接清除 localStorage 并 router.push('/login'),移除 ElMessageBox.confirm 确认框。 --- src/utils/request.ts | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/src/utils/request.ts b/src/utils/request.ts index c9e27c9..3fc35dc 100644 --- a/src/utils/request.ts +++ b/src/utils/request.ts @@ -1,5 +1,5 @@ import axios from 'axios'; -import { ElMessage, ElMessageBox } from "element-plus"; +import { ElMessage } from "element-plus"; import router from "@/router"; const basic_url = import.meta.env.VITE_BASE_URL; @@ -13,22 +13,10 @@ const axiosInstance = axios.create({ const handleError = (error: any) => { console.log(error); - // 401 未授权:token 过期或未登录(优先检查,避免被后续逻辑拦截) + // 401 未授权:token 过期或未登录,直接跳转登录页 if (error?.response?.status === 401) { - ElMessageBox.confirm( - '登录已过期,请重新登录', - '提示', - { - confirmButtonText: '重新登录', - cancelButtonText: '取消', - type: 'warning', - } - ).then(() => { - localStorage.removeItem("isLoggedIn"); - router.push("/login"); - }).catch(() => { - // 用户点击取消,不做处理 - }); + localStorage.removeItem("isLoggedIn"); + router.push("/login"); return Promise.reject(error); }