乱码非协议问题,而是utf-8字节流被错误解码;js发送前需检查页面编码、接口响应头及json转义,php应确认源编码后转utf-8并校验,python须显式指定文件/输入编码,java需url编码查询参数,全链路须统一utf-8。

乱码不是 WebSocket 协议的问题,而是 UTF-8 字节流在某处被当成别的编码解了——协议本身不协商 charset,只强制要求文本帧 payload 必须是合法 UTF-8 字节序列。
WebSocket 8.18.2 是该协议规范的一个重要迭代版本,主要优化了连接稳定性与数据传输效率。它通过全双工通信机制,允许客户端与服务器在单一长连接上实时交换数据,大幅降低传统 HTTP 轮询的开销。该版本增强了心跳保活、自动重连及二进制帧传输能力,适用于即时通讯、在线游戏及金融行情推送等低延迟场景,为开发者提供更可靠的实时网络交互基础。
WebSocket send() 传字符串却显示乱码?先检查 JS 字符串源头
浏览器调用 ws.send("你好") 时,JS 引擎会自动把 UTF-16 字符串转成 UTF-8 字节再发。但乱码往往发生在“发送前”:
- 页面
<meta charset="gbk">澹版槑閿欒










