管理杂谈OA答疑ERP答疑教程搜索

web.qq.com实现方法的讨论,如何实现的即时信息收发?


首先webqq没是使用flash作为长连接代理。
其使用了yahoo的ajax工具包。

使用中,20秒进行一次http://web-proxy.qq.com/conn_s post请求,内容为:

http/1.1 200 ok
content-type: text/html; charset=utf-8
cache-control: private
server: qq/j.vn
content-length: 0

20秒一次,并且内容为空,的post,这个应该是判断用户离线使用的。而并非取得任何新数据。

比较奇怪的,任何一个用户发信息给正在使用webqq的用户,立刻webqq用户会自己,主动的发起一次对 http://web-proxy.qq.com/conn_s post请求
来获得新的聊天内容数据,内容如下:

http/1.1 200 ok
content-type: text/html; charset=utf-8
cache-control: private
server: tencent_http_server
content-length: 68

1034456174;17;3088;313033262;275062;09;0b;test123;1241812821;575540857;


聊天内容是test123,可以看到并未进行加密之类,不过这不再本文讨论范围,
我想知道的是,web qq是如何即时的获得有信息到来的这个“通知”让客户端主动的去发起请求去服务器获取数据?

我过了一遍代码,绝不是简单的轮询之类,因为没有任何延迟,如果是轮询总会有延迟。而且看链接状态也没有显式的长连接。

他页面上有4个iframe






应该是以某个iframe以某种方法与服务器保持连接,这是如何实现的?
如何“通知”让客户端主动的去发起请求去服务器获取数据?



回复帖子:http://topic.csdn.net/u/20090504/15/1b34df3f-3d28-4832-9e5d-6d351e322321.html


更多精彩文章浏览...
点击右上角图标分享到朋友圈
官方网站:http://www.clicksun.cn
咨询热线:400-186-1886
服务邮箱:service@clicksun.cn