javascript - 微信扫码跳转页面是怎么实现的
天蓬老师
天蓬老师 2017-04-11 13:24:11
[JavaScript讨论组]

怎么运用websocket实现微信扫码跳转页面功能呢,目前websocket基本搭建已经完成了但是不知道扫码跳转页面是怎样的,有相关经验的大神吗?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(5)
迷茫

@redduke 实现机制如这位童鞋所说,我在其基础之上补充一点。

轮询查询用户授权状态。这种方式简单有效。
我真不太清楚为什么那么多人喜欢使用长链接。
https://wx.qq.com/ 微信网页版登录,自己使用chrome查看一下请求就知道了。


上图中客户端会去轮询查询用户是否进行扫码。但是微信的做法有一点点小优化,如果没有扫码可以看到每个请求大约需要25s的时间返回,其实就是服务器保持该链接25s,在服务器看来这其实就是一个异步处理请求。如果用户在25s扫码操作完成,那返回后应该直接登录成功。如果未扫码那返回之后客户端会重新发起请求。

天蓬老师

url-生成->二维码-解析->url

黄舟

1.生成URL,并监听服务器的状态
2.用户扫码,访问URL,授权确认,发送授权状态到服务器
3.页面监听到授权确认的状态,然后跳转URL

PHP中文网
  1. 访问页面,生成二维码,二维码附带uuid.服务器存该uuid,页面等待扫描,并且一直请求该uuid的状态;

  2. 手机微信扫码,手机端跟服务端单独交互,发送二维码附带的uuid,页面显示该二维码已被扫描,需手机端确认登陆;

  3. 手机端点击确认登陆,发送授权信息给服务器,服务器返回页面登陆成功状态并跳转聊天界面;

我一直觉得微信的扫码登陆大体上就是这样,虽然其中可能有很多地方涉及到安全.
但是,我不知道啊!!

图片压缩太厉害了..
http://img.bitscn.com/upimg/a...点进去自己看吧

ringa_lee

开放平台,提供二维码登录默认实现了这部分

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号