区别:1、ajax是一种创建交互式应用的开发技术,websocket是用于实现浏览器与服务器全双工通信的协议;2、ajax建立短连接,websocket建立长链接;3、ajax用于非实时数据交互,websocket用于实时数据交互。
本文操作环境:windows7系统、javascript1.8.5版、dell g3电脑。
websocket和ajax的区别是什么
1.本质不同
ajax,即异步javascript和xml,是一种创建交互式网页应用的网页开发技术;
websocket是html5一种新的协议,实现了浏览器与服务器全双工通信。其本质是先通过http/https协议进行握手后创建一个用于交换数据的tcp连接,服务端与客户端通过此tcp连接进行实时通信。
2.生命周期不同。
websocket建立的是长连接,在一个会话中一直保持连接;而ajax是短连接,数据发送和接受完成后就会断开连接。
3.适用范围不同
websocket一般用于前后端实时数据交互,而ajax前后端非实时数据交互。
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()
【相关教程推荐:ajax视频教程】
以上就是websocket和ajax的区别是什么的详细内容。