在企业微信里面添加h5页面 进行登录授权

1.需求:在企业微信里面添加h5页面 进行登录授权,获取到用户的code,进行登入id的验证

2.步骤:

在这里插入图片描述

  • 在企业微信内部进行配置,拿到appid,redirect_uri,agentid参数步骤参考这篇文章

  • 由于企业微信进入页面之前会进行授权,然后再进行跳转咱们系统的首页(也是就redirect_uri中的地址),那么就会有两种解决方案:

    ① 有一个页面用于授权,然后在跳转首页
    ② 直接将授权的操作写在首页中,在首页进行授权,然后再跳转首页(我用的是这种方式)
    在这里插入图片描述
    首页进行授权的代码如下:

   //判断是否授权
  const CORPID = '    '; //appid参数
  const REDIRECT_URI = encodeURI(' ');  //redirect_uri参数
  const AGENTID =  '  '; //agentid 参数
  const searchParams = new URLSearchParams(window.location.search);

  const code = (route.query.code as string) || (searchParams.get('code') as string);
  const state = (route.query.state as string) || (searchParams.get('state') as string);
  const token = computed(() => userStore.getToken);
  
  //路由上没有code的情况下,进行企业微信授权
  if (!code) {
    const authUrl = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${CORPID}&redirect_uri=${REDIRECT_URI}/index.html&response_type=code&scope=snsapi_base&state=1&agentid=${AGENTID}#wechat_redirect`;
    window.location.href = authUrl;
  }
  
 //存在code且不存在token的情况下走登录的接口
  if (code && (token.value == null || token.value == 'null')) { 
    userStore.resetUserStore();
    login({
      code: code,
      state: state,
    }).then((res) => {
      userStore.setToken(res.token);
    });
  }

相关推荐

  1. 企业H5文件下载。

    2024-03-27 16:04:01       39 阅读
  2. 授权登录获取用户openid

    2024-03-27 16:04:01       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-27 16:04:01       91 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-27 16:04:01       97 阅读
  3. 在Django里面运行非项目文件

    2024-03-27 16:04:01       78 阅读
  4. Python语言-面向对象

    2024-03-27 16:04:01       88 阅读

热门阅读

  1. ardupilot开发 --- 机载(边缘)计算机-VISP-附录 篇

    2024-03-27 16:04:01       34 阅读
  2. Python GUI编程(Tkinter)

    2024-03-27 16:04:01       40 阅读
  3. 浅析机器学习的常用方法

    2024-03-27 16:04:01       42 阅读
  4. 一些常见的PostgreSQL问题和答案

    2024-03-27 16:04:01       38 阅读
  5. 代码随想录阅读笔记-二叉树【递归遍历】

    2024-03-27 16:04:01       40 阅读
  6. Mybatis在SpringBoot中是如何被加载执行

    2024-03-27 16:04:01       33 阅读