扫码登录看起来神奇,主要是因为 APP 扫⾃家的码会做⼀些普通⼆维码软件不会做的额外的操作,那就是将当前已登录的和扫出来的 ID 提交到服务器,类似的应⽤还有扫码⽀付、扫码加等功能,实现流程如下:
1.当⽤户 访问⽹页版,服务器为这个会话⽣成⼀个全局唯⼀的 ID,此时系统并不知道访问者是谁。
服务器除了提供唯⼀的uid,实际页⾯打开时,浏览器跟还会跟服务器创建⼀个长连接,请求uid的扫描记录。
如果⼀直没有扫描,在特定时长后(⽬前是27秒左右)会接到状态码408(请求超时),表⽰应该继续下⼀次请求。
2.⽤户打开⾃⼰的⼿机并扫描这个⼆维码,并提⽰⽤户是否确认登录。
如果接到状态码201(服务器创建新资源成功),表⽰客户端扫描了该⼆维码。
3.⼿机上的是登录状态,⽤户点击确认登录后,⼿机上的客户端将账号和这个扫描得到的 ID ⼀起提交到服务器。
4.服务器将这个 ID 和⽤户 的号绑定在⼀起,并通知⽹页版,这个 ID 对应的号为此⽤户 ,⽹页版加载⽤户 的信息,⾄此,扫码登录全部流程完成。网
也可以上下载登陆/⽀付的API,封装好的,接⼊时,只需填接⾃已的IP地址,商户号名,开发者帐号名,即可,⽅不⽅便,代码都不⽤写了
发布评论