WebSocket是一种基于TCP的协议,允许客户端和服务器进行全双工通信。以下是其核心数据流程:

1. 握手阶段

客户端通过HTTP发起请求,服务器返回101切换协议响应。
例如:

GET /chat HTTP/1.1  
Host: example.com  
Upgrade: websocket  
Connection: Upgrade  
Sec-WebSocket-Key: s3pPLMBiTxaQ...  
Sec-WebSocket-Version: 13
WebSocket_握手流程

2. 数据传输

连接建立后,数据以帧(Frame)形式双向传输:

  • 文本帧{"type": "text"}
  • 二进制帧{"type": "binary"}
  • 关闭帧{"type": "close"}
    Emoji示例: WebSocket传输的实时性使其成为游戏(🎮)和聊天(💬)场景的首选。

3. 生命周期管理

  • 建立:ws://example.com/path
  • 保持:心跳机制(ping/pong)
  • 终止:主动关闭或超时

📚 扩展阅读

想深入了解WebSocket协议细节?点击此处查看协议规范文档。

图片关键词:WebSocket_数据帧结构、实时通信_示例、WebSocket_心跳机制