Vue3 应用在企业微信下自动登录的相关问题?

27次阅读

共计 550 个字符,预计需要花费 2 分钟才能阅读完成。

实现

企业微信客户端打开则自动跳转 OAuth 连接授权成功后 Callback Code 回来去后端换区用户 token 自动登录;非企业微信客户端跳转到 Login 页面。。

问题

  1. 目前我整个逻辑写在了 router.beforeEach 里,写这里合适吗,大家都写在哪里(比如是否把跳转和自动登录写在 main.ts 中路由前?)?

  2. 流程是否有问题?我的基本逻辑:判断有无 token 是否登录 > 判断是否企业微信客户端(是跳转 OAuth 连接并回调)> 判断是否有携带 Code,自动登录。

// 4. 判断访问页面是否在路由白名单地址 (静态路由) 中,如果存在直接放行
  if (ROUTER_WHITE_LIST.includes(to.path)) return next();

  // 5. 判断是否有 Token,没有重定向到 login 页面
  if (!userStore.token) {if (isWeWork()) {userStore.loginWeWork().then(isSuccess => {if (isSuccess) next();});
    } else {next({ path: LOGIN_URL, replace: true});
    }
  } else {
    // 使用缓存视图
    useCachedViewStoreHook().addCachedView(to);
    next();}
正文完
 0