使用微信小程序扫码登录系统PC端web的功能

1、项目说明:

项目PC端(vue单页面应用,前后端分离)、移动端(微信小程序)共用同一Java Springboot服务。小程序可以直接获取微信手机号登录,不需要密码,因为系统黙认密码是随机的,因此在登录PC端时,用户就不知道密码是多少,实现PC端登录目前可以用三种方案:

1)因为可以直接登录微信小程序,所以可以在小程序中重置密码,这样就可以在PC端登录了,这比较简单。

2)使用微信开放平台第三方网站oauth2授权登录,这也是可以实现的,不过要申请微信网站应用,有点麻烦。

3)目前最快能实现的扫码登录方式,就是使用已登录的小程序来扫描PC端登录二维码进行认证,这是最快能实现的扫码登录PC端的方式。

2、实现思路:

1)小程序上需要实现一个打开相机扫码的功能;2)PC端登录界面生成小程序扫描二维码(唯一的随机值);3)使用小程序扫描此二维码。4)原理是:PC端利用一个随机值(sid)生成了一个二维码的同时,连接后端的websocket服务;小程序扫码时请求后台controller接口并携带此随机值(sid),获取到当前小程序登录的token,再利用sid获取此PC端连接的websocket服务,将token发送到此PC客户端,这样PC端就能收到这个token,再用保存token,这样就实现了小程序扫码登录PC端的方式。

3、具体实现代码:

1)PC端登录二维码的生成并连接后端websoc

猜你喜欢

转载自blog.csdn.net/zxstrive/article/details/108554448
今日推荐