diff --git a/ui/src/router/chat/index.ts b/ui/src/router/chat/index.ts index ea6ca141da2..557cd59278d 100644 --- a/ui/src/router/chat/index.ts +++ b/ui/src/router/chat/index.ts @@ -25,35 +25,35 @@ router.beforeEach( return } const { chatUser } = useStore() - const notAuthRouteNameList = ['login'] - if (!notAuthRouteNameList.includes(to.name ? to.name.toString() : '')) { - if (to.params && to.params.accessToken) { - chatUser.setAccessToken(to.params.accessToken.toString()) - } else { + if (['login', 'chat'].includes(to.name ? to.name.toString() : '')) { + chatUser.setAccessToken(to.params.accessToken.toString()) + } else { + next({ + path: '/404', + }) + return + } + const authentication = await chatUser.isAuthentication() + const token = chatUser.getToken() + if (authentication) { + if (!token && to.name != 'login') { next({ - path: '/404', + name: 'login', + params: { + accessToken: to.params.accessToken, + }, }) return - } - const token = chatUser.getToken() - const authentication = await chatUser.isAuthentication() - if (authentication) { - if (!token) { - next({ - name: 'login', - params: { - accessToken: to.params.accessToken, - }, - }) - return - } } else { - await chatUser.anonymousAuthentication() + next() + return } + } else { + await chatUser.anonymousAuthentication() + } - if (!chatUser.application) { - await chatUser.applicationProfile() - } + if (!chatUser.application) { + await chatUser.applicationProfile() } // 判断是否有菜单权限 if (to.meta.permission ? hasPermission(to.meta.permission as any, 'OR') : true) {