| 企服解答
WebSocket是雙向的,在客戶端-服務(wù)器通信的場(chǎng)景中使用的全雙工協(xié)議,與HTTP不同,它以ws://或wss://開頭。它是一個(gè)有狀態(tài)協(xié)議,這意味著客戶端和服務(wù)器之間的連接將保持活動(dòng)狀態(tài),直到被任何一方(客戶端或服務(wù)器)終止。在通過客戶端和服務(wù)器中的任何一方關(guān)閉連接之后,連接將從兩端終止。
websocket是什么意思
讓我們以客戶端-服務(wù)器通信為例,每當(dāng)我們啟動(dòng)客戶端和服務(wù)器之間的連接時(shí),客戶端-服務(wù)器進(jìn)行握手隨后創(chuàng)建一個(gè)新的連接,該連接將保持活動(dòng)狀態(tài),直到被他們中的任何一方終止。建立連接并保持活動(dòng)狀態(tài)后,客戶端和服務(wù)器將使用相同的連接通道進(jìn)行通信,直到連接終止。
新建的連接被稱為WebSocket。一旦通信鏈接建立和連接打開后,消息交換將以雙向模式進(jìn)行,客戶端-服務(wù)器之間的連接會(huì)持續(xù)存在。如果其中任何一方(客戶端服務(wù)器)宕掉或主動(dòng)關(guān)閉連接,則雙方均將關(guān)閉連接。套接字的工作方式與HTTP的工作方式略有不同,狀態(tài)代碼101表示W(wǎng)ebSocket中的交換協(xié)議。
| 拓展閱讀
WebSocket同HTTP一樣也是應(yīng)用層的協(xié)議,但是它是一種雙向通信協(xié)議,是建立在TCP之上的。連接過程 —— 握手過程:
1、瀏覽器、服務(wù)器建立TCP連接,三次握手。這是通信的基礎(chǔ),傳輸控制層,若失敗后續(xù)都不執(zhí)行。
2、TCP連接成功后,瀏覽器通過HTTP協(xié)議向服務(wù)器傳送WebSocket支持的版本號(hào)等信息。(開始前的HTTP握手)
3、服務(wù)器收到客戶端的握手請(qǐng)求后,同樣采用HTTP協(xié)議回饋數(shù)據(jù)。
4、當(dāng)收到了連接成功的消息后,通過TCP通道進(jìn)行傳輸通信。
[免責(zé)聲明]
文章標(biāo)題: websocket是什么意思
文章內(nèi)容為網(wǎng)站編輯整理發(fā)布,僅供學(xué)習(xí)與參考,不代表本網(wǎng)站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)溝通。發(fā)送郵件至36dianping@36kr.com,我們會(huì)在3個(gè)工作日內(nèi)處理。