2 copyredzero copyredzero 于 2016.03.24 18:01 提问

微信扫码登录的服务端编写思路

各位大神好,小菜鸟第一次提问,还望大家多多关照。
问题如下:
我们都知道网页版的微信是通过扫码登录的,网页端和服务端建立一个长连接,手机扫码后后将登录许可传到服务端,服务端收到请求后将用户信息网页通过长连接返回给网页端。大概思路如下图:
图片说明
那么问题来了,在长连接存在的这段时间里,服务端是如何得知手机发送了登录许可?如果是将许可存入表,那服务端要想知道值更新,不是得不断查询数据库吗?还是有其他方法?
期待大神们的精彩回答!

1个回答

Meditator_hkx
Meditator_hkx   Rxr 2016.03.25 09:02

这是个很好的问题,涉及到系统的架构和内部组件之间的交互,是设计型问题。我也会保持关注的。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
客户端扫码登录功能的实现思路
最近在做一个扫码登录功能,为此我还在网上搜了一下关于微信的扫描登录的实现方式。当这个功能完成了后,我决定将整个实现思路整理出来,方便自己以后查看也方便其他有类似需求的程序猿些。
微信网页授权实现扫码登录原理
pc端生成uuid对服务器缓存进行轮询,手机扫码后进行网页授权并携带uuid写入服务器缓存
关于PHP实现扫码登录
首先,我来讲题下我做这个功能的原因。 因为公司接了某企业的一个单子,微信开放平台本来是提供第三方登录的,但是他们并没有给我们的域名授权,然而,授权审核需要7天。于是,我决定采用微信端公众平台的授权获取用户信息后实现PC端登录。 登录的原理 登录的原理无非就是session或者cookie,然而,博主这里用的是session,session是连接客户端和服务器的重要部分。但是,不同的客
thinkPHP3.2 微信登录(微信扫码登录)
thinkPHP3.2 微信登录(微信扫码登录); thinkPHP3.2 微信登录(微信扫码登录)
利用长轮询实现微信网页版扫码登录
扫码登录操作过程 浏览器输入:https://wx.qq.com/?lang=zh_CN手机登录微信,利用“扫一扫”功能扫描网页上的二维码手机扫描成功后,提示“登录网页版微信”;网页上显示“成功扫描 请在手机点击确认以登录”手机端点击“登录网页版微信”,网页跳转到用户的微信操作界面 整个扫码登录的操作过程还是挺简单的,而且交互地实时性比较好,如果网络不是非常阻塞,整个过程还是非常快的。
扫描二维码登陆实现原理
扫码登录操作过程 浏览器输入:https://wx.qq.com/?lang=zh_CN手机登录微信,利用“扫一扫”功能扫描网页上的二维码手机扫描成功后,提示“登录网页版微信”;网页上显示“成功扫描 请在手机点击确认以登录”手机端点击“登录网页版微信”,网页跳转到用户的微信操作界面 整个扫码登录的操作过程还是挺简单的,而且交互地实时性比较好,如果网络不是非常阻塞,整个过程还是非常快的。
利用长轮询实现模仿网页扫码登录逻辑生成验证随机数
扫码登录核心逻辑过程:1.页面首先向服务器请求一个URL地址+唯一随机数 2.服务器在数据库记录这条随机数 3.页面通过URL+随机数数据生成二维码,并持续询问服务器该随机数状态(PS:这是最关键的步骤) 4.手机通过扫描二维码访问服务器,服务器获得随机数参数,在数据库中将这条参数的状态进行更改 5.页面获得知服务器中该随机数状态变更后,进行登录长轮询:客户端向服务器发送Ajax请求,服务器
java开发Demo~微信扫码登录demo
首先声明,此demo不是直接可以跑通的,请把代码放到自己项目里,然后服务器端部署启动。 这一切的前提,请将微信公众平台 全部配好。(这个公众平台配明白,不容易的) 开发所需15个工具类 可以在我的资源中下载 详细代码不写 说明下WeiXinUtil.java中的参数 Ip白名单页数需要设置的,否则会连接失败。 https://api.weixin.qq.com/cgi-...
微信扫码登录demo
微信扫码登录demo
.NET MVC 微信扫码登录
.NET MVC 微信扫码登录,网站微信扫码登录,获取iconurl,openid,unionid,token等基本信息获取