[英]Server sent event vs web sockets?
我正在開發一個網絡應用程序,用戶可以通過從智能手機到桌面的多個平台訪問這些應用程序,有時需要在兩個客戶端之間進行通信,例如,如果我希望我的朋友加入我的網絡,我會向他發送朋友請求但是我希望我的朋友能夠看到該請求而無需刷新頁面。
在這種情況下,這將是一個更好的選擇? 此外,我希望這個可以在盡可能多的平台和瀏覽器上工作,這些平台和瀏覽器有更多的瀏覽器支持? 有更好的選擇嗎?
做出這個選擇時要記住一些事情。
另一種選擇可能是通知。 所有移動設備現在都支持可以定位到應用程序的通知,並且還有許多瀏覽器。 在所有情況下,從客戶端到消息中心(Apple,Google,Microsoft等)已經存在連接,並且所有通知都通過此通道發送。
以下是WebSockets與SSE的完整概述: http : //www.html5rocks.com/en/tutorials/eventsource/basics/
服務器發送事件:僅用於發送文本消息的持久連接服務器2-客戶端,並且在所有主要瀏覽器中實現,但是Internet Explorer。 如果連接丟失,它可以重新連接。 http://caniuse.com/eventsource
WebSokets:能夠傳輸UTF8文本和二進制數據的全雙工持久連接。 http://caniuse.com/websockets
WebSocket更好,未來。
據我所知,SSE更簡單,更容易實現,而WebSockets提供雙向數據傳輸,但是您需要了解自己的協議/ API以利用它們。 老實說,我從來沒有真正打過SSE, Socket.IO確實需要我所需要的所有實時網絡應用程序通信相當容易,並構建為跨瀏覽器。
如果您只是希望他能夠看到通知,那么SSE應該沒問題。 如果您希望他能夠從同一頁面回復您的朋友請求,那么讓服務器向您發送他已被接受的通知,您可能希望使用WebSockets實現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.