WebSocket 握手是建立 WebSocket 连接的第一步,它允许客户端和服务器之间建立一个全双工通信通道。以下是 WebSocket 握手过程的详细说明:

握手过程

  1. 客户端发起请求:客户端通过 HTTP 请求向服务器发送一个握手请求,请求头中包含特定的信息,如下所示:

    GET /ws HTTP/1.1
    Host: example.com
    Connection: Upgrade
    Upgrade: websocket
    Sec-WebSocket-Key: dGhlIHNhbHQgSW50byB0aGUgUGhvdG9z
    Sec-WebSocket-Version: 13
    
  2. 服务器响应:服务器接收到请求后,如果支持 WebSocket,会返回一个升级响应,包含以下头部信息:

    HTTP/1.1 101 Switching Protocols
    Upgrade: websocket
    Connection: Upgrade
    Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
    
  3. 建立连接:客户端收到服务器的响应后,如果一切正常,就会完成握手,建立 WebSocket 连接。

图片示例

WebSocket 握手过程

扩展阅读

如果您想了解更多关于 WebSocket 的知识,可以阅读本站的 WebSocket 深入理解 文章。