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

实现

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

问题

  • 目前我整个逻辑写在了 router.beforeEach 里,写这里合适吗,大家都写在哪里(比如是否把跳转和自动登录写在 main.ts 中路由前?)?
  • 流程是否有问题?我的基本逻辑:判断有无 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();
  }
阅读 666
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏