1.本质不一样
Ajax,即异步JavaScript和XML,是一种建立交互式网页应用的网页开发技术;
WebSocket是HTML5一种新的协议,实现了浏览器与服务器全双工通讯。其本质是先经过HTTP/HTTPS协议进行握手后建立一个用于交换数据的TCP链接,服务端与客户端经过此TCP链接进行实时通讯。
2.生命周期不一样。
websocket创建的是长链接,在一个会话中一直保持链接;而ajax是短链接,数据发送和接受完成后就会断开链接。
3.适用范围不一样
websocket通常用于先后端实时数据交互,而ajax先后端非实时数据交互。
4.发起人不一样
Ajax技术须要客户端发起请求,而WebSocket服务器和客户端能够相互推送信息。
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()
参考资料: