當前位置: 華文問答 > 數碼

WebSocket 是什麽原理?為什麽可以實作持久連線?

2013-02-18數碼

額。。最高票答案沒答到點子上,最後怎麽跑到Nodejs上去了。。Websocket只是協定而已。。

我一個個來回答吧

一、WebSocket是HTML5出的東西(協定),也就是說HTTP協定沒有變化,或者說沒關系,但HTTP是不支持持久連線的(長連線,迴圈連線的不算)

首先HTTP有1.1和1.0之說,也就是所謂的keep-alive,把多個HTTP請求合並為一個,但是Websocket其實是一個新協定,跟HTTP協定基本沒有關系,只是為了相容現有瀏覽器的握手規範而已,也就是說它是HTTP協定上的一種補充可以透過這樣一張圖理解

有交集,但是並不是全部。

另外Html5是指的一系列新的API,或者說新規範,新技術。Http協定本身只有1.0和1.1,而且跟Html本身沒有直接關系。。

通俗來說,你可以用HTTP 協定 傳輸非Html 數據 ,就是這樣=。=

再簡單來說, 層級不一樣

二、Websocket是什麽樣的協定,具體有什麽優點

首先,Websocket是一個 持久化 的協定,相對於HTTP這種 非持久