怎么能讓服務器主動向客戶端發送數據?
在HTTP中有一種長連接技術,可以模仿Socket通信實現服務器端主動向客戶端瀏覽器發送數據。它的原理其實很簡單:當服務器端接到客戶端的詢問請求后,將整個HTTP連接置于阻塞狀態,即什么也不做,也不發送數據,也不關掉連接。
直到客戶端需要將最新數據返回給客戶端時,將數據通過這個HTTP連接返回回去,并且關閉連接。
這樣,客戶端看到的結果,就似乎是服務器端主動向客戶端瀏覽器發送數據了。但是,關掉連接以后怎么辦呢?
這時候,可以通過客戶端JS代碼中的定時器,再次發起請求。
這樣,只有內容發生了變化,才會進行一次HTTP會話,所以整體效率比輪詢方式要高出很多,同時還有了更好的及時性。
下一篇cpu的新特性