From 4f1b601ccaeaea02f1af34dfc1a490baba109d88 Mon Sep 17 00:00:00 2001 From: chenxf Date: Sun, 4 Jan 2026 19:14:34 +0800 Subject: [PATCH] =?UTF-8?q?feat(user):=20=E5=B0=86resetToken=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2=E4=B8=BAlogout=E4=BB=A5=E7=BB=9F=E4=B8=80=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E7=99=BB=E5=87=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 统一了用户权限管理和登出流程,将原本的resetToken方法替换为logout方法, 确保用户在无权限或登录失效时能够正确登出并重定向到登录页面。 - 修改permission.js中的异常处理逻辑 - 更新request.js中的响应拦截器处理 - 统一使用logout方法处理用户登出场景 - 修复了权限验证和错误处理的一致性问题 --- src/permission.js | 2 +- src/utils/request.js | 4 ++-- vue.config.js | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/permission.js b/src/permission.js index 847174d..b46cec4 100644 --- a/src/permission.js +++ b/src/permission.js @@ -101,7 +101,7 @@ router.beforeEach(async(to, from, next) => { next({ ...to, replace: true }) } catch (error) { // remove token and go to login page to re-login - await store.dispatch('user/resetToken') + await store.dispatch('user/logout') Message.error(error || 'Has Error') next(`/login`) NProgress.done() diff --git a/src/utils/request.js b/src/utils/request.js index 04da969..a66363b 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -46,7 +46,7 @@ service.interceptors.response.use( const { status, data } = response if (status === 401 || status === 403) { // 没有登录或者没有权限 - store.dispatch('user/resetToken').then(() => { + store.dispatch('user/logout').then(() => { location.reload() }) } @@ -62,7 +62,7 @@ service.interceptors.response.use( duration: 5 * 1000 }) // 没有登录或者没有权限 - store.dispatch('user/resetToken').then(() => { + store.dispatch('user/logout').then(() => { location.reload() }) } else { diff --git a/vue.config.js b/vue.config.js index d5604b5..e269f94 100644 --- a/vue.config.js +++ b/vue.config.js @@ -138,7 +138,7 @@ module.exports = { config // https://webpack.js.org/configuration/devtool/#development .when(process.env.NODE_ENV === 'development', - config => config.devtool('cheap-source-map') + config => config.devtool('source-map') ) config