web.qq.com實現方法的討論,如何實現的即時信息收發?
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
[p]首先webqq沒是使用flash作為長連接代理。[br]其使用了yahoo的ajax工具包。[br][br]使用中,20秒進行一次http://web-proxy.qq.com/conn_s post請求,內容為:[br][br]http/1.1 200 ok[br]content-type: text/html; charset=utf-8[br]cache-control: private[br]server: qq/j.vn[br]content-length: 0[br][br]20秒一次,并且內容為空,的post,這個應該是判斷用戶離線使用的。而并非取得任何新數據。[br][br]比較奇怪的,任何一個用戶發信息給正在使用webqq的用戶,立刻webqq用戶會自己,主動的發起一次對 http://web-proxy.qq.com/conn_s post請求[br]來獲得新的聊天內容數據,內容如下:[br][br]http/1.1 200 ok[br]content-type: text/html; charset=utf-8[br]cache-control: private[br]server: tencent_http_server[br]content-length: 68[br][br]1034456174;17;3088;313033262;275062;09;0b;test123;1241812821;575540857;[br][br][br]聊天內容是test123,可以看到并未進行加密之類,不過這不再本文討論范圍,[br]我想知道的是,web qq是如何即時的獲得有信息到來的這個“通知”讓客戶端主動的去發起請求去服務器獲取數據?[br][br]我過了一遍代碼,絕不是簡單的輪詢之類,因為沒有任何延遲,如果是輪詢總會有延遲。而且看鏈接狀態也沒有顯式的長連接。[br][br]他頁面上有4個iframe[br][br][br][br][br][br][br]應該是以某個iframe以某種方法與服務器保持連接,這是如何實現的?[br]如何“通知”讓客戶端主動的去發起請求去服務器獲取數據?[/p]
[p] [/p] [p]回復帖子:[url=http://topic.csdn.net/u/20090504/15/1b34df3f-3d28-4832-9e5d-6d351e322321.html]http://topic.csdn.net/u/20090504/15/1b34df3f-3d28-4832-9e5d-6d351e322321.html[/url][/p] 該文章在 2010/4/30 23:57:01 編輯過 |
關鍵字查詢
相關文章
正在查詢... |