【扫码登录的逻辑以及关于扫码登录的思考】

【扫码登录的逻辑以及关于扫码登录的思考】,第1张

【扫码登录的逻辑以及关于扫码登录的思考】

扫码登录的逻辑以及关于扫码登录的思考
  • 扫码登录逻辑概述
    • 流程概述:
  • 关于扫码登录的应用场景
  • 关于扫码登录的思考

扫码登录逻辑概述 流程概述:

1、当用户打开门户网站时,浏览器请求服务器获取一个随机唯一序列用于识别本次的登录 *** 作,同时浏览器每隔一段时间就请求服务器,查询本次随机序列当前的状态,例如,已扫码请在手机端确认登录、登录成功、或者是已经失效需要重新生成等。
2、用户使用手机扫码[^思考点] ,此时手机会将用户的信息以及本次的随机序列发送至服务器
3、服务器收到以后根据用户信息,以及本次序列查询到用户的密码,或者直接进行免密登录后生成一个token,并将token与唯一序列绑定在一起。
4、此时pc端浏览器通过每隔一段时间的请求,发现本次随机序列已经生成了token,则获取到token以后,用于之后请求的身份验证
一次扫码登录的大概逻辑就是这样了,就针对于功能的实现来说,这几步便可以实现一次扫码登录流程。至于安全性等不得不考虑的问题,可以针对性的添加到上面的步骤中。步骤中随机序列的生失效,以及免密登录等细节就此忽略。

关于扫码登录的应用场景

扫码登录对于用户的体验来说,用户不需要输入账号密码,不需要进行短信验证等,只需要扫一扫,点击确定即可。
根据流程来看,必不可少的一步就是服务器如何拿到用户的信息,从而实现后面的登录流程。想拿到用户的信息就需要手机端已经登录,那就肯定需要一个app,在app已经的登录的情况下,进行扫码登录,流程才能走通,所以扫码登录便被限制于同时拥有移动端app以及pc端应用或浏览器的服务。

关于扫码登录的思考

1、其实用户id并不是必须的,我们只需要拿到用户恒不变的,唯一的一个依据就好,那我首先想到的就是手机的唯一串码了,如果我们能拿到唯一串码,那么只需要在首次登录的时候将用户的串码和用户信息保存在一起,登录的时候根据串码获取用户信息即可,此时,用户随便用浏览器,甚至相机自带的扫码功能即可实现登录,但是,当然没有这么简单,为了保护用户安全,浏览器是禁止获取手机的这个唯一串码,必须有app,并且app获取到相关权限才可以。
2、继续深究,有没有其他能代替的用户唯一id?此ID需要每个用户都不同,且可以做到用户不换设备就不发生改变,并且用浏览器就可以获取到的,紧接着看到了一片文章link ,文章里说根据显卡的不同,可以使用canvas获取到浏览器唯一的指纹信息,如果可以的话,那只需要在首次登录的时候在移动端浏览器进行,登录的同时将指纹信息与用户信息绑定,此后用户使用此浏览器扫一扫便可根据指纹信息进行扫码登录。考虑到用户可能有多个设备,多个浏览器,可以考虑将指纹信息与用户信息进行多对一关联,由于前端知识的欠缺,研究就暂时止步于此吧,毕竟实现它的价值并不大。
3、不得不称赞微信、支付宝、京东等的扫码登录,实在是方便了很多

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5610360.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存