websocket 連接過程

首先,websocket屬於應用層協議,和 http 一樣也是基於 TCP/IP 協議。websocket 連接的建立需要藉助 http,連接建立完之後就與 http 無關了。

過程

Connection:Connection必須設置爲Upgrade,表示客戶端希望連接升級

Upgrade:Upgrade必須設置爲WebSocket,表示在取得服務器響應之後,使用HTTP升級將HTTP協議轉換(升級)爲WebSocket協議。

Sec-WebSocket-key:隨機字符串,用於驗證協議是否爲WebSocket協議而非HTTP協議

Sec-WebSocket-Version:表示使用WebSocket的哪一個版本。

Sec-WebSocket-Accept:根據Sec-WebSocket-Accept和特殊字符串計算。驗證協議是否爲WebSocket協議。

Sec-WebSocket-Location:與Host字段對應,表示請求WebSocket協議的地址。

HTTP/1.1 101 Switching Protocols:101狀態碼錶示升級協議,在返回101狀態碼後,HTTP協議完成工作,轉換爲WebSocket協議。此時就可以進行全雙工雙向通信了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章