我對socket.io很新穎,並且在node/express/socket.io中編寫了我的第一個應用程序。現在,在我的nginx服務器上一切正常。我想將我的應用程序發佈給公衆,但是我擔心它不會適用於很多人。我有幾個朋友測試我的應用程序,一切都很順利(這是一個非常簡單的應用程序)。這是我的擔憂:現在每個連接似乎都使用websockets,這正是我想要的。但是,由於客戶端的奇怪之處,我的應用有時會降級爲「投票」?如果是這樣,socket.io如何決定何時使用輪詢以及何時使用websocket(是基於瀏覽器/版本還是連接或什麼)?我很確定它在可能的情況下使用websocket,但是有沒有一個列表可以將它敲下來「投票」?另外,有沒有一種方法可以通過使用「輪詢」來測試我的應用程序以查看它是否有效?什麼時候socket.io使用輪詢而不是websockets?
我可以發佈代碼,但我認爲這是關於socket.io如何工作的一般性問題。
嗨,只強調@ jfriend00提出的一點:在socket.io 1.0+中,默認情況下連接**總是**以幾個HTTP「輪詢」請求開始,但您可以按照[這裏]所述跳過這些內容。 http://stackoverflow.com/a/28240802/4080966)。 –