一、写在前面
Ajax
和websocket
都是进行前后端数据通信的工具。在这里我们将详细说明一下两者之间的区别。
二、websocket
此时我们需要去了解长轮询
和短轮询
,websocket
是长轮询。举一个简单的例子,在一个电商平台上,商品的库存可能发生变化,此时需要返回给用户,所以此时如果是短轮询,需要客户端不断地向服务器发起请求。而长轮询就是当后台的库存数据发生改变时,服务器自动向前端发送响应,因为长轮询依然保持连接。
三、ajax和websocket之间的区别
3.1、生命周期不同
websocket是长连接,会话一直保持。
ajax是短连接,发送端接收之后就会断开。
3.2、使用范围
websocket适用于前后端实时交互数据。
ajax是非实时交互数据。
3.3、发起人
websocket是服务器和客户端相互推送。
ajax是客户端发起。