1.1//協議、網域名稱(主機)、埠、路徑 http版本
host: localhost:
3000
connection: upgrade //協議轉換
upgrade: websocket //轉換成websocket協議
origin: file://
//請求源(協議、網域名稱、埠),
sec-websocket-version:
13//版本號
sec-websocket-key:
1xg0algkxudizlhyyfewuw==
//連線標識
http/
1.1101 switching protocols //101更改協議
upgrade: websocket //更改後的協議
connection: upgrade
websocket客戶端例項
雙端:ws 模組包含雙端(客戶端、服務端)
同源策略: ws 協議本身不需要同源策略(same-origin policy),服務端可做檢查(origin)
路徑:服務端connection時,未檢查路徑,可自實現
const websocket =
require
('ws'
)//websocket
const
= websocket
//客戶端
const ws =
newwebsocket
('ws://localhost:3000'
)//傳送訊息(開啟websocket後)
ws.on
('open',(
)=>
)//接受訊息
ws.on
('message'
, msg => console.
log(msg)
)//服務端
const wss =
newserver()
wss.on(
'connection'
, ws =>`)
//雙向通訊})
})
HTML學習筆記 九 Web Socket
websocket 是乙個建立在 tcp 之上進行全雙工通訊的應用層協議 我們知道,http 協議採用的是請求 響應模式,服務端是不能主動向客戶端推送資料的 若要實現推送功能,一般都是採用 ajax 輪詢,但這樣頻繁的請求會給服務端帶來極大的壓力 websocket 協議就是為了解決這種類似的場景而...
伺服器學習 學習筆記 WebSocket概述
一 websocket簡介及握手規則 websocket與html5息息相關,websocket是乙個持久化協議,websocket借助於http協議進行第一次握手,典型的websocket握手形式如下 即客戶端向伺服器發起請求 origin 相較於http協議的握手請求格式,websocket的握...
學習隨記 websocket
知乎上乙個講解的非常好 首先,websocket是乙個html5出的協議 為什麼要出這個協議?因為 1.http不是持久鏈結,每次鏈結都耗時 即http是非狀態,每次都要重新鑑別,告訴服務端你是誰,浪費了流量和時間 so 出現websocket websocket是持久化的協議,它是基於http 首...