微信二维码扫描登录流程详解
二维码扫描登录流程细节(项目经验)
1: 获取二维码信息
- PC会优先存放服务器生成的唯一密钥: 比如 source、secret 以密文形式存储
- 大致发送字段:
- source
- secret
- mac(mac 地址)
- 服务器生成 二维码信息:二维码字符、二维码过期时间、二维码状态。并将mac 与 二维码信息绑定后
2: 获取二维码状态、 校验二维码是否过期
- 客户端解析二维码信息生成二维码
- 开启定时器1: 轮询检测二维码过期时间(二维码过期 暂停定时器1 定时器2 登台客户刷新二维码: 缓解服务器压力)
- 开启定时器2:轮询二维码当前状态
3: 手机扫描二维码
- 手机扫描二维码 点击登录 (发送请求到服务端、服务端更新二维码状态:已登录)
- 手机扫描二维码 点击取消(部发送请求到服务端)
4:获取二维码状态
- 轮询二维码当前状态
- 状态是登陆中, 继续检测
- 状态是已登录, 关闭定时器1 定时器2, 二维码界面关闭, 进入主界面