在介紹web實時交互方式前,先了解一下HTTP的通信機制,共分爲以下四步:
第一步:
HTTP是基於傳輸層的TCP協議,在HTTP開始工作之前,web瀏覽器首先通過網絡與尾部服務器在TCP層建立連接。在TCP層進行“三次握手”之後,建立了TCP連接,此時HTTP就可以進行傳輸了;
第二步:
建立連接後,客戶端發送一個請求給服務器;
第三步:
服務器接到請求後,給予相應的相應信息;
第四步:
客戶端接收服務器所返回的信息通過瀏覽器顯示在用戶的顯示屏上,然後客戶端與服務器斷開連接。
4種Web實時交互技術:
輪詢:客戶端定時發送請求,服務器端接收到客戶端請求後,馬上進行響應,並關閉連接。
長輪詢:客戶端發送請求,服務器端接收到客戶端請求後進行阻塞,並保持連接;當服務器端有數據需要進行響應時,使用保持住的連接進行響應,並關閉連接。
長連接:客戶端發送請求,服務器端接收到客戶端請求後進行阻塞,並保持連接;當服務器端有數據需要進行響應時,使用保持的連接進行響應,並保持住連接。
推送:客戶端與服務器端建立連接後,服務器端可以直接將數據推送給客戶端。