文章目录
简介
- WebSocket协议允许客户端(如浏览器)与服务器之间进行双向通信。
- 该协议使用基于源的安全模型,通常由Web浏览器使用。
- 协议包括一个初始握手过程和基本的消息框架,建立在TCP之上。
概述
协议特点
WebSocket 基于 TCP 协议,实现了双向数据传输。这意味着服务器和客户端能够随时向对方发送数据,不再受限于传统的请求-响应模式。同时,它支持多种数据格式,如文本、二进制等,为不同类型的数据传输提供了便利。
生命周期
连接建立
客户端向服务器发送握手请求,服务器响应后,WebSocket 连接建立。这一过程通常涉及 HTTP 协议的升级操作。
连接开放
连接建立成功后,双方可以自由地进行数据交换。在此阶段,数据能够实时传输,保证了通信的高效性。
连接关闭
当一方决定关闭连接时,会发送关闭帧通知对方。关闭的原因可能多种多样,如应用程序的需求、网络故障等。
连接关闭完成
双方完成所有的关闭操作,资源被释放,连接彻底终止。
及时处理连接关闭事件至关重要,它有助于释放相关资源,避免内存泄漏和其他潜在问题。同时,能够及时通知应用程序进行必要的清理和后续处理,保证系统的稳定性和可靠性。
消息格式
- WebSocket 的消息由消息头和消息体组成。
- FIN 标志位用于指示当前帧是否为消息的最后一帧。
- Opcode 决定了如何解析后续的数据载荷部分,不同的操作码对应不同的帧类型,如文本帧、二进制帧、关闭帧等。
- Payload length 表示有

最低0.47元/天 解锁文章
730

被折叠的 条评论
为什么被折叠?



