feat: 删除临时绕过逻辑
Co-Authored-By: 王心悦 <wangxy84@xiaopeng.com>
| | |
| | | # 是否开启服务接口代理 Y | N |
| | | VITE_HTTP_PROXY=Y |
| | | |
| | | # 【临时】本地预览权限绕过:Y=默认拥有全部权限,可进任意页面(验收后改回 N 或删除) |
| | | VITE_PERMISSION_BYPASS=N |
| | | |
| | | # 【临时·本地调试】Y=关闭 401→SSO 自动跳转,页面不再跳登录页(仅 dev 生效,调试完改回 N 或删除) |
| | | VITE_SSO_BYPASS=N |
| | | |
| | | # SSO退出登录 |
| | | # VITE_SSO_HOST=sso.test.xiaopeng.com |
| | | # VITE_SSO_APP_ID=RoboTaxi-admin-predeploy |
| | |
| | | function hasPermission( |
| | | permission?: Entity.RoleType | Entity.RoleType[] | string | string[] | number | number[], |
| | | ) { |
| | | // 【临时】本地预览权限绕过:VITE_PERMISSION_BYPASS=Y 时默认拥有全部权限, |
| | | // 使所有静态路由/菜单都生成、不再跳无权限页(验收后删除本段) |
| | | if (import.meta.env.VITE_PERMISSION_BYPASS === 'Y') |
| | | return true |
| | | // return true |
| | | if (!permission) |
| | | return true |
| | | |
| | |
| | | appStore.showProgress && window.$loadingBar?.start() |
| | | |
| | | // 判断有无TOKEN,登录鉴权 |
| | | // 本地调试绕过:VITE_SSO_BYPASS=Y 时(仅 dev)视为已登录,便于无 token 调试页面跳转 |
| | | const ssoBypass = import.meta.env.DEV && import.meta.env.VITE_SSO_BYPASS === 'Y' |
| | | const isLogin = Boolean(local.get('accessToken')) || ssoBypass |
| | | const isLogin = Boolean(local.get('accessToken')) |
| | | |
| | | // 修时序:已登录但用户信息未就绪(首次登录/无痕/清缓存)时,先补拉一次用户信息+权限, |
| | | // 保证下面 initAuthRoute 构建菜单时能拿到真实权限,避免"有权限却被误判无权限/来回跳"。 |
| | |
| | | } |
| | | |
| | | export function redirectToSsoAuth(payload?: unknown) { |
| | | // 本地调试开关:显式开启后,关闭 401→SSO 自动跳转,页面停留便于调试(仅 dev 生效) |
| | | if (import.meta.env.DEV && import.meta.env.VITE_SSO_BYPASS === 'Y') { |
| | | console.warn('[SSO] VITE_SSO_BYPASS=Y 已开启,已跳过 SSO 登录跳转(仅本地调试,勿用于线上)') |
| | | return false |
| | | } |
| | | |
| | | if (typeof window === 'undefined' || isRedirectingToSso || hasSsoCallbackParams()) |
| | | return false |
| | | |
| | |
| | | readonly VITE_SSO_APP_ID: string |
| | | /** SSO 退出后回跳地址 */ |
| | | readonly VITE_SSO_REDIRECT_URL: string |
| | | /** 【本地调试】Y=关闭 401→SSO 自动跳转,仅 dev 生效 */ |
| | | readonly VITE_SSO_BYPASS?: 'Y' | 'N' |
| | | /** 后端服务的环境类型 */ |
| | | readonly MODE: ServiceEnvType |
| | | /** 指挥中心 Socket.IO 地址 */ |