
本文基于 Boost.Beast 实现 WebSocket 服务端和客户端,讲解 stream 声明、握手流程、消息读写、binary/text 模式、ping/pong/close 控制帧、超时设置。所有 API 均对照 Beast 官方文档与头文件核实。本专栏 websocketpp介绍过 WebSocket 概念,Beast 是 Asio 原生的现代实现。一、WebSocket 与 BeastWebSocket 是在 HTTP 握手后升级为全双工持久连接的协议(RFC 6455)。与 HTTP 的"请求-响应"不同,WebSocket 连接建立后双方可随时主动推送消息。Boost.Beast 的 WebSocket 实现:基于 Asio,与 HTTP 共享传输层支持 permessage-deflate 压缩扩展支持同步/异步/C++20 协程类型安全的 stream 封装命名空间简写:namespacebeast=boost::beast