WebSocket在线调试

连接WebSocket服务,收发文本、JSON与二进制消息,带心跳保活与完整收发日志

必须以 ws:// 或 wss:// 开头
未连接

发送消息

文本
JSON
二进制(Hex)
大多数网关(Nginx 默认 60 秒、部分云负载均衡 350 秒)会切断空闲连接,业务层心跳能避免连接被静默关闭。 标准的协议级 Ping 帧无法从浏览器 JS 发送,这里发的是普通业务消息。

消息日志(0)

已发送
0
已接收
0
发送字节
0
接收字节
0
连接后收发的消息会显示在这里

调试要点

  • 浏览器的 WebSocket API 无法自定义请求头,需要鉴权时通常把 token 放在查询参数或连接后的首条消息里。
  • 跨域不受同源策略限制,但服务端会校验 Origin 头,被拒绝时表现为连接直接关闭。
  • 关闭码 1006 表示异常关闭且没有收到关闭帧,常见原因是网络中断、代理超时或服务端进程退出,浏览器不会给出更多信息。
  • 1000 是正常关闭,1001 表示对端离开,1009 是消息过大,1011 是服务端内部错误。
  • 二进制消息以 ArrayBuffer 接收并按 Hex 展示;文本消息原样展示。
不要在公共回声服务上发送真实业务数据或凭据,对方服务器可以看到全部内容。

功能介绍

WebSocket在线调试用于快速验证WebSocket服务是否正常。支持填写ws或wss地址与可选子协议,连接状态以指示灯呈现,服务端最终选择的子协议会显示出来。消息发送支持三种类型:纯文本、JSON(发送前校验并压缩,另提供格式化按钮)、二进制(按十六进制输入,自动校验字符与长度)。接收端以ArrayBuffer模式工作,二进制消息按十六进制展示并给出字节数,文本消息原样展示。日志区按发送、接收、系统、错误四类着色,带毫秒级时间戳与字节数,可自动滚动、一键复制全部日志,并统计收发条数与字节总量。心跳功能可按自定义内容与间隔定时发送业务消息,用于绕过Nginx默认60秒等网关空闲超时。连接关闭时会解析关闭码含义(1000正常、1006异常关闭未收到关闭帧、1009消息过大、1011服务端错误等)。页面还说明了浏览器WebSocket的固有限制:无法自定义请求头,鉴权Token只能放在查询参数或首条消息中。

使用说明

1. 填写WebSocket地址(必须以ws或wss协议开头),需要时填写子协议;2. 点击"连接",指示灯变绿表示握手成功;3. 选择文本、JSON或十六进制类型,输入内容后点"发送";4. 在日志区查看每条消息的方向、时间与字节数,可复制全部日志用于提工单;5. 需要保活时设置心跳内容与间隔并点"开始心跳";6. HTTPS页面无法连接明文的ws地址(混合内容会被浏览器拦截),请改用wss;7. 关闭码1006表示异常断开且没有收到关闭帧,通常是网络中断、代理超时或服务端进程退出,浏览器不会提供更多信息;8. 浏览器无法自定义请求头,鉴权请放在查询参数或连接后的第一条消息里;9. 不要在公共回声服务上发送真实业务数据或凭据。