ev-drogon-enum-class-ws-type-002¶
| 字段 | 值 |
|---|---|
| 项目 | drogonframework/drogon |
| 固定 commit | 3aae769cc405 |
| 路径 | lib/src/WebSocketConnectionImpl.cc |
| 行段 | L45-L53 |
| 特性 | 强类型枚举(enum class) |
| 许可证 | MIT |
| 代码来源 | 项目源码 |
| 级别 | manual |
| 审核 | zyuhao7 @ 2026-10-27 |
| 测试代码 | 否 |
| 发现方式 | manual |
用法¶
用 enum class 区分 WebSocket 帧类型并映射到操作码
为什么典型¶
帧类型只在 WebSocketMessageType 作用域内可见,避免与其它枚举的 Text、Binary 冲突。
摘录¶
if (type == WebSocketMessageType::Text)
opcode = 1;
else if (type == WebSocketMessageType::Binary)
opcode = 2;
else if (type == WebSocketMessageType::Close)
{
assert(len <= 125);
opcode = 8;
}
备注¶
生产路径;发送帧之前把消息类型翻译成 RFC 6455 操作码。