websocket和ajax的區別

1. 本質不一樣
ajax,即異步JavaScript和XML,是一種建立交互式網頁應用的網頁開發技術;
webSocket是HTML5一種新的協議,實現了瀏覽器與服務器全雙工通訊。其本質是先經過HTTP/HTTPS協議進行握手後建立一個用於交換數據的TCP鏈接,服務端與客戶端經過此TCP鏈接進行實時通訊。web


2. 生命週期不一樣
websocket創建的是長鏈接,在一個會話中一直保持鏈接;而ajax是短鏈接,數據發送和接收完成後就會斷開鏈接。ajax


3. 適用範圍不一樣
websocket通常用於先後端實時數據交互;而ajax先後端非實時數據交互。json


4. 發起人不一樣
ajax技術須要客戶端發起請求(本身請求回來的數據用戶本身看);而websocket服務器和客戶端能夠相互推送信息(用戶A請求返回來的東西A用戶能夠看B用戶也能夠看;若是是屬於公共的那你們均可以看)。後端


5. 用法不一樣
ajax:瀏覽器

$.ajax({
       type:"post",
       url:"http://localhost:8080/target",
       data:"state = yes",
       dataType:"json",
       success:funciont(data){
         ...
       }
});

websocket:服務器

var monitor = new WebSocket("ws://"+ip+path)
onOpen()、onMessage()、onClose()
相關文章
相關標籤/搜索