实现方式:
- 一种是基于微信开放平台的扫码登录
- 一种是基于微信公众平台的扫码登录
注意:
这两种授权登录是不一样的。
下面我们使用基于微信公众平台的扫码登录。
设计思路
1、页面授权流程相关接口如下:
1.1 获取二维码,二维码文本数据推荐后端生成。
1.2 用户扫码,如果用户同意授权,页面将跳转至 redirect_uri/?code=CODE&state=STATE。
1.3 通过 code 获取微信接口的调用凭证 access_token
1.4 通过 access_token授权凭证获取微信用户信息
2、我们PC端使用微信扫码登陆的设计思路
2.1 前端调用后端获取二维码文本数据,展示二维码。
2.2 PC前端轮询调用后端登录接口,检查是否登录(可以通过redirect_uri地址增加场景id作为判断, 这个场景id要唯一,由后端生成并缓存)
2.3 用户扫码,如果用户同意授权,页面将跳转至 redirect_uri/?code=CODE&state=STATE。
redirect_uri,我们指向后端,然后后端获取微信用户接口,若轮训接口响应成功,微信手机端关闭页面,回到聊天窗口。
此时已登录成功