WebSocket应用的是WebSocket协议。

WebSocket是一种在单个TCP连接上进行全双工通信的协议,它允许在客户端和服务器之间建立持久性的连接,并支持双向实时数据传输。相比传统的HTTP请求-响应模式,WebSocket具有更低的延迟和更高的性能,适用于实时性要求较高的应用场景,如在线聊天、实时游戏、推送通知等。

WebSocket协议的特点包括:

  1. 建立连接:客户端和服务器之间通过HTTP协议建立WebSocket连接,类似于HTTP握手过程,但在握手后,连接将保持打开状态,允许后续数据的实时传输。
  2. 双向通信:WebSocket支持全双工通信,客户端和服务器可以同时发送和接收数据,而不需要依次发送请求和响应。
  3. 实时性:由于建立了持久性连接,WebSocket可以实时地传输数据,减少了通信的延迟。
  4. 减少网络流量:WebSocket协议中的数据帧较小,相比传统HTTP请求,可以减少网络流量,提高性能。
  5. 适用于跨域:WebSocket允许在不同域名下建立连接,支持跨域通信。

WebSocket协议使用类似HTTP的握手过程来建立连接,但是在握手成功后,通信的数据格式和传输方式与HTTP有很大不同。WebSocket的数据帧采用了一种轻量级的二进制或文本格式,以提供更高效的数据传输。由于WebSocket协议支持实时性和双向通信,它被广泛用于现代Web应用中的实时数据传输和通信需求。