HTML5伺服器推送事件

乞力馬紮羅的雪CYF發表於2015-09-28

1.HTML5伺服器推送事件介紹

伺服器推送事件(Server-sent Events)是HTML5規範中的一個組成部分,可以用來從伺服器端實時推送資料到瀏覽器端。

2.傳統的伺服器端推送資料技術

WebSocket:WebSocket規範是HTML5中的一個重要組成部分,已經被很多主流瀏覽器支援,也有不少基於WebSocket開發的應用。正如名稱所表示的一樣,WebSocket使用的是套接字連線,基於TCP協議。使用WebSocket之後,實際上在伺服器端和瀏覽器之間建立一個套接字連線,可以進行雙向的資料傳輸。WebSocket的功能是很強大的,使用起來也很靈活,可以適用於不同的場景。不過WebSocket技術也比較複雜,包括伺服器端和瀏覽器端的實現都不同於一般的Web應用。


Http協議:簡易輪詢,即瀏覽器端定時向伺服器發出請求,來查詢是否有資料更新,這種做法比較簡單,可以在一定程度上解決問題。不過對於輪詢的時間間隔需要進行仔細考慮。輪詢的時間過長,會導致使用者不能及時接收到更新的資料;輪詢的間隔過短,會導致查詢請求過多,增加伺服器的負擔。




1.伺服器程式碼頭:

header('Content-Type:text/event-stream');


2.EventSource事件:

事件                   描述

onopen            伺服器的連結被開啟

onmessage     接收訊息

onerror            錯誤發生


github主頁:https://github.com/chenyufeng1991  。歡迎大家訪問!

相關文章