很多网站和PC客户端为了方便用户登录,可以使用手机客户端“扫一扫”方式来登录,减少了输入用户名密码的过程。
实现的原理大致如下:
1.PC网页端生产一个UUID为登录唯一标示,我们暂且叫他loginticket
https://www.**.com/open/qrcode/login/47cf65a14ad8bd2be2f7de2a57b74d397262c023
同时AJAX定时检查loginticket,是否登录
https://www.**.com/open/qrcode/check/47cf65a14ad8bd2be2f7de2a57b74d397262c023
2.客户端使用“扫一扫”读取二维码之后,解析出loginticket,使用客户端保存的用户名密码信息进行登录。loginticket对应的会话就存在啦。
3.PC网页端定时检查loginticket的会话状态时,发现已经登录,取出会话session中的内容,跳转到登录后的页面