企业微信开发——身份验证模块

相信开发过企业微信应用的同行们,刚开始都会疑惑企业微信的身份验证模块下的两个模式:

  1. 网页授权登录
  2. 扫码授权登录

分别讲一下各自的流程

网页授权登录

用户点击在企业微信终端(包括PC端和移动端)应用里的的URL(该URL形如:https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&agentid=AGENTID&state=STATE#wechat_redirect),该链接会被企业微信官方后台解析并校验,如果通过了,终端会跳转到上面URL里的REDIRECT_URI并带上一个code,企业微信应用可以根据这个code换取用户的userid和user_ticket(前端或后端都可以实现,只要能发起https请求就可以),根据userid或user_ticket获取用户的信息,两者的区别是获取的用户信息层次不同(基本信息、敏感信息)。

扫码授权登录

用户在任何平台的浏览器上扫二维码,并在手机上确认授权,经过企业微信官方后台解析并校验,如果通过了,终端会跳转到一个URL并带上一个code,接下来就跟网页授权登录差不多了。
二维码有两种方式设置,一种是跳转到另一个网页,这个网页上有二维码;另一种是二维码是附在你的网页上的,不需要跳转到另一个网页。

两种模式度可以抽象为如下几个步骤:

  1. 请求code,两者是不一样的,一个是通过点击终端URL,一个是通过在扫浏览器上的二维码
  2. 获取用户信息,两者是一样的,都是根据code通过https请求去获取用户的信息

这两种模式的一些其他区别如下:

网页授权 扫码授权
场景 指企业微信终端(包括PC端和移动端) 任何平台的浏览器上都可以
前置操作 不需要 需要“设置授权回调域”
对第三方服务商的支持 支持 不支持

你可能感兴趣的:(企业微信开发——身份验证模块)