From b83cb8d8fa9dcd7c7c865446121d989fbc312a8e Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期一, 04 十一月 2024 18:23:15 +0800 Subject: [PATCH] 钉钉登录 --- src/permission.ts | 61 +++++++++++++++++++----------- 1 files changed, 38 insertions(+), 23 deletions(-) diff --git a/src/permission.ts b/src/permission.ts index 7a15bfa..45b0146 100644 --- a/src/permission.ts +++ b/src/permission.ts @@ -9,43 +9,46 @@ import useSettingsStore from '@/store/modules/settings'; import usePermissionStore from '@/store/modules/permission'; import { ElMessage } from "element-plus"; +import { fa } from 'element-plus/es/locale'; NProgress.configure({ showSpinner: false }); const whiteList = ['/login', '/register', '/social-callback']; router.beforeEach(async (to, from, next) => { NProgress.start(); - if (getToken()) { + + if (judge(getToken())) { console.log('鍒ゆ柇褰撳墠鐢ㄦ埛鏄惁宸叉媺鍙栧畬user_info淇℃伅'); to.meta.title && useSettingsStore().setTitle(to.meta.title as string); + /* has token*/ if (to.path === '/login') { next({ path: '/' }); NProgress.done(); } else { - if (useUserStore().roles.length === 0) { - isRelogin.show = true; - // 鍒ゆ柇褰撳墠鐢ㄦ埛鏄惁宸叉媺鍙栧畬user_info淇℃伅 + // if (useUserStore().roles.length === 0) { + isRelogin.show = true; + // // 鍒ゆ柇褰撳墠鐢ㄦ埛鏄惁宸叉媺鍙栧畬user_info淇℃伅 - const [err] = await tos(useUserStore().getInfo()); - if (err) { - await useUserStore().logout(); - ElMessage.error(err); - next({ path: '/' }); - } else { - isRelogin.show = false; - const accessRoutes = await usePermissionStore().generateRoutes(); - // 鏍规嵁roles鏉冮檺鐢熸垚鍙闂殑璺敱琛� - accessRoutes.forEach((route) => { - if (!isHttp(route.path)) { - router.addRoute(route); // 鍔ㄦ�佹坊鍔犲彲璁块棶璺敱琛� - } - }); - next({ ...to, replace: true }); // hack鏂规硶 纭繚addRoutes宸插畬鎴� - } - } else { - next(); - } + // const [err] = await tos(useUserStore().getInfo()); + // if (err) { + // await useUserStore().logout(); + // ElMessage.error(err); + // next({ path: '/' }); + // } else { + // isRelogin.show = false; + // const accessRoutes = await usePermissionStore().generateRoutes(); + // // 鏍规嵁roles鏉冮檺鐢熸垚鍙闂殑璺敱琛� + // accessRoutes.forEach((route) => { + // if (!isHttp(route.path)) { + // router.addRoute(route); // 鍔ㄦ�佹坊鍔犲彲璁块棶璺敱琛� + // } + // }); + // next({ ...to, replace: true }); // hack鏂规硶 纭繚addRoutes宸插畬鎴� + // } + // } else { + next(); + // } } } else { // 娌℃湁token @@ -63,3 +66,15 @@ router.afterEach(() => { NProgress.done(); }); + +const judge = (token: string) => { + if (token) { + var data = JSON.parse(token) + if (data != null) { + if (data.expirse != null && new Date().getTime() - data.expirse < 60 * 60 * 1000) { + return true + } + } + } + return false +} \ No newline at end of file -- Gitblit v1.8.0