当前位置:主页 > 查看内容

浅谈微信扫码登录的原理

发布时间:2021-07-14 00:00| 位朋友查看

简介:前言 大家好,我是程序员阿木! 网页版微信刚推出时,无数人被它的登录方式惊艳了一下,不需要输入用户名密码,打开手机微信扫一扫,便自动登录。 微信扫码登录 如今,只要同时支持PC端与移动端的应用,均支持手机App扫码登录,像淘宝,12306等。从原理上讲,……

前言

大家好,我是程序员阿木!

网页版微信刚推出时,无数人被它的登录方式惊艳了一下,不需要输入用户名密码,打开手机微信扫一扫,便自动登录。

浅谈微信扫码登录的原理
微信扫码登录

如今,只要同时支持PC端与移动端的应用,均支持手机App扫码登录,像淘宝,12306等。从原理上讲,二维码只是一段文本的编码,那么它是如何实现快捷登录的呢?今天我们就来简单分析一下!

正文

如果你用我查查、支付宝、新浪微博等软件扫码二维码,你会发现此二维码解析出来是如下的网址:

https://login.weixin.qq.com/l/obsbQ-Dzdg==

接下来详细介绍一下扫码登录具体的每个步骤:

浅谈微信扫码登录的原理
微信扫码登录原理

如图:

  • 用户 A 访问微信网页版,微信服务器为这个会话生成一个全局唯一的 ID,上面的 URL 中 obsbQ-Dzdg== 就是这个 ID,但是此时系统并不知道访问者是谁。
  • 用户A打开自己的手机微信并扫描这个二维码,并提示用户是否确认登录。
  • 手机上的微信是登录状态,用户点击确认登录后,手机上的微信客户端将微信账号和这个扫描得到的 ID 一起提交到服务器
  • 服务器将这个 ID 和用户 A 的微信号绑定在一起,并通知网页版微信,这个 ID 对应的微信号为用户 A,网页版微信加载用户 A 的微信信息,至此,扫码登录全部流程完成

至于服务端如何通知网页版的微信,无非两种方式:

如果是CS的应用,则客户端使用轮询的方式去询问服务器是否登录成功

  • 如果是BS的应用,则服务端可以通过CallBack回调的方式来告知客户端登录成功。

扫码登录看起来神奇,主要是因为微信 APP 扫自家的码会做一些普通二维码软件不会做的额外的操作,那就是将当前已登录的微信和扫出来的 ID 提交到微信服务器,类似的应用还有扫码支付、扫码加公众号等功能.

结语

以上便是扫码登录的原理,你弄明白了吗?


本文转载自网络,原文链接:https://www.toutiao.com/a6778304272237855244/
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:外媒:苹果5G手机因疫情推迟至10月发布 下一篇:没有了

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐