程序媛之实现微信或企业微信扫码登录PC端网站的三种方式

最近在做公司的一个项目,通过微信或企业微信扫码登录PC管理后台,替代传统的账号、密码登录。

为了完成这个功能,疯狂百度各种扫码登录的技术文章,能实现微信或企业微信扫码登录的方式可以说有三种:

1.注册一个微信资源开放平台账号。官方链接是这个https://open.weixin.qq.com/。看网站应用模块即可,开发技术跟微信开发差不多,这种方式只能是微信扫码,不支持企业微信扫码。


程序媛之实现微信或企业微信扫码登录PC端网站的三种方式_第1张图片

2.第二种实现方式,使用企业微信开发文档。官方链接:https://work.weixin.qq.com/api,但是这种方式只能实现企业微信端扫码登录。


程序媛之实现微信或企业微信扫码登录PC端网站的三种方式_第2张图片

3.我使用的是第三种方式,可以同时支持微信和企业微信扫码。通过websocket+spring websocket 实现长链接。但是这个也有一定的限制或缺陷,服务器需要时weblogic12.3,tomcat7,jdk7.而且还不支持IE,需要自己另外用到SOCKJS的插件,目前我还没有添加,不知道具体会怎样。其实很多人也会用到PC端每秒轮训,向服务器请求结果。但是百度说这种方式比较消耗带宽等资源。websocket通信过程大概是这样:

1.打开PC端二维码,这个二维码带了一个唯一标识,用于手机扫码时做匹配。这个时候PC端已经向服务器端发起长连接的申请。

2.微信扫描二维码,并通过网页授权接口获取到用户的信息并且将这个二维码的唯一标识传给服务器后台。通过判断其是否有权限后,通过唯一标识找到PC端,将结果返回给PC端。

源码下次再接着再贴一下。

你可能感兴趣的:(程序媛之实现微信或企业微信扫码登录PC端网站的三种方式)