位置: IT常识 - 正文

微信开放平台扫码登录是怎么实现的(微信开放平台扫码登录的回调怎么更改成异步模式)

编辑:rootadmin

  各位,微信网页端或PC客户端的扫码大家肯定会经常用到。那这里面究竟有怎样的原理呢?
616/auto1686896151微信开放平台扫码登录是怎么实现的(微信开放平台扫码登录的回调怎么更改成异步模式)

  为便于理解的非官方解释

  1.你用浏览器打开http://wx.qq.com的时候,微信给你随机分配了一个链接,【相当于给你开了间房,房号1024,注意,只给你房号,没给你钥匙】,用二维码包装着,并且设置了有效时间【10分钟你不进房间,就给你取消】。这里面没有用户什么事情,所以不存在UID(user ID),只是一个随机的字母和数字组合。

  2.二维码的转码规则是统一的,所以意味着,只要是个二维码扫描软件,谁都能拿到这个链接,微信可以扫出来,我查查也可以扫出来。

  3.所以拿到链接没有用,重要的是谁拿到链接,微信拿到了,就可以从微信客户端发一条信息给服务器,告诉服务器,现在是谁使用了某个链接,其他二维码扫描软件,不能和微信服务器通话,所以毫无价值。【你拿到了房号,就给酒店老板打个电话,说是我,老板就知道张三又来开房了,其他人没有老板电话,知道房号也没用】

  4.这时候,在你刚打开的浏览器窗口里面,就知道并显示了你的信息,理论上可以直接打开聊天窗口,但是为了不突兀不尴尬,微信选择再让你在手机上做一个确认操作。【你站到你的房间门口了,老板也知道你是张三了,并且把你的那个好基友也放到了你房间里,但是谁知道你基友会在房间里干点啥?如果他正好弯腰在捡肥皂,这时候恰好你后面有人经过,房门大开大家尴尬不尴尬?所以还是老板考虑周到,他要你在电话里确认一下才给你开门,你大可以等后面没人了再开门进去】

  5.好了,现在你可以进去好好享用你的基友了。

  技术解答

  当用户使用后的微信扫描该二维码的时候,会将这个id和手机上的微信账户及密码绑定,并上传到微信网页版服务器;

  二维码样例:http://weixin.qq.com/x/ARmFYVvUzczwBl9u6Y1I ,利用我查查之类的二维码应用可以得到类似这样的地址,但并不会自动打开该地址,微信客户端针对 http://weixin.qq.com/x/ 开头的地址做了特殊处理,会自动获取相关信息并提示确认。在手机版微信访问这个页面进行确认时,Server已经同时获得了客户端信息,并通过之前保持的长连接告知浏览器。

  (1)微信网页版页面每隔1秒或2秒会get请求该id对应的微信账户及密码,如果id绑定上了微信账户和密码,那么就可以请求到账户和密码,就可以自了。

  (2)从体感来看,怎么着都不可能是页面1-2秒轮询发起GET请求的,实际是通过堵塞等待的长连接,近乎实时的获得信息。对于验证过程,Open API 一般是通过授权令牌(Token)来解决的,原理是当用户通过授权后,分配一个限定条件下的令牌(如限制本机访问、限制授权有效时间、限制设备数等),使获得授权的用户仅在有限的前提下能访问相关服务。像计算机休眠后曾做的授权就自动收回了,这样就有效的避免了在别人电脑上(尤其是网吧)打开,但忘记关闭或退出这类安全问题了。

  (3)整个授权过程的验证部分在手机端进行,有效杜绝了 PC 上泛滥的各类木马、『安全工具』的监听,大大降低了帐号被盗的风险。

  (4)核心过程应该是: 浏览器获得一个临时 id,通过长连接等待客户端扫描带有此 id 的二维码后,从长连接中获得客户端上报给 server 的帐号信息进行展示。并在客户端点击确认后,获得服务器授信的令牌,进行随后的信息交互过程。在超时、网络断开、其他设备,此前获得的令牌或丢失、或失效,对授权过程形成有效的安全防护。

本文链接地址:https://www.jiuchutong.com/zhishi/55105.html 转载请保留说明!

上一篇:怎么看iwatch是第几代(怎么看自己iwatch第几代)

下一篇:小四字体是多少pt(小四字体是多少像素)

  • NVIDIA GeForce RTX 4070 显卡的规格与性能

  • 苹果自动开启Wi-Fi怎么关闭(苹果自动开启wifi怎么关闭)

  • 微信视频说话对方听不见是怎么回事(微信视频说话对方听不见怎么回事)

  • 坦白局能知道对方是谁吗(坦白局之后是什么局)

  • vivox21有没有呼吸灯(vivo手机有没有呼叫功能)

  • 微信网站是多少(微信的网站是什么)

  • 手机特别容易发烫怎么办(手机特别容易发烫)

  • 抖音权重3是什么意思(抖音权重3是高还是低)

  • 手机可以做表格吗(手机可以做表格的免费软件)

  • 没有电话卡可以注册微信吗(没有电话卡可以登录微信吗)

  • oppo手机关机了还能定位吗(oppo手机关机了可以查到位置吗)

  • 为什么抖音喜欢的作品不显示(为什么抖音喜欢数量与实际不符)

  • 手机怎么做推文(手机怎么写推文)

  • 手机隐私密码怎么取消(手机隐私密码怎么找回)

  • 智能手环可以打电话吗(智能手环可以打游戏吗)

  • 淘宝店铺运营钉钉号是什么(淘宝开店运营)

  • a.gray是什么手机病毒(aurai是什么手机牌子)

  • 苹果7p相机怎么调专业模式(苹果7p相机怎么设置拍照效果最好)

  • matlab2016a安装(matlab2016a安装不了)

  • vivox27“幻彩夏日”什么时候上市(vivox27)

  • 微信更换手机号原手机还有微信吗(微信更换手机号绑定后,原来的微信号能用吗)

  • 苹果数据线认证小技巧(苹果数据线认证是什么意思)

  • Win10 21H1 正式版已大规模推送部署,21H2 正式版即将到来(win10 21h1正式版怎么样)

  • 【计算机网络】网络层IP协议(计算机网络拓扑结构有哪些)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络