用于同时管理多个 WebSocket 客户端,支持批量创建、批量连接/断开、重命名、删除等操作。
| 控件 | 说明 |
|---|---|
| 地址输入框 | 填入 WebSocket URL,支持 ws:// 与 wss://,例如 ws://localhost:8080/ws。 |
| 批量数量 | 新建时同时创建 N 个客户端(1~200),名称自动编号,例如 客户端1 / 客户端2 / ...。 |
| + 新建连接 | 按批量数量创建连接。勾选"新建自动连接"后,新建完成会立即自动发起连接。 |
| 全部连接 / 全部断开 | 一键对当前所有连接执行连接或断开操作。 |
| 新建自动连接 | 新建后立刻发起连接;不勾选时只创建、不自动连。 |
| 连接列表 | 每个连接左侧圆点表示状态: 已连接、 连接中、 错误/关闭;名字旁的 ♥ 表示心跳已开、🔁N 表示该连接正跑 N 个循环/批量任务。 |
| 选中连接 | 单击某条连接切换当前选中的客户端,下方日志区、URL 栏、心跳配置都会切换到该连接。 |
| 重命名 | 双击连接名可以重命名(例如改成 用户A、压测-001)。 |
| 删除 | 鼠标悬停行时右侧出现 ×,点击删除该连接(会自动停止该连接上的循环和心跳)。 |
| 工具栏 URL/连接/断开 | 切换选中连接后,可在中间工具栏修改该连接的 URL,点击「连接」「断开」单独控制当前连接。 |
| 自动重连 | 勾选后,连接被服务端关闭时会自动重连(每 2 秒一次,最多 10 次)。 |
选中某连接后,中间大区域显示该连接的收发日志,颜色区分方向:
| 按钮 | 说明 |
|---|---|
| 清空日志 | 清空当前选中连接的日志显示(不影响已持久化的数据,刷新后重新载入本地缓存)。 |
| 复制日志 | 复制当前选中连接可见日志到剪贴板;如果开启了过滤/屏蔽/隐藏心跳,只复制当前可见的日志。 |
| 🔍 已过滤徽标 | 工具栏出现黄色"🔍 已过滤"徽标时,说明当前启用了关键词过滤/屏蔽/隐藏心跳,可能看不到全部消息。 |
双击展开 JSON:当某条消息内容看起来是合法 JSON(以 { / [ 开头并以 } / ] 结尾、可被解析),鼠标悬停该行时消息右侧会出现"双击格式化"提示;双击该行即可将消息格式化为缩进多行显示,行左侧会出现蓝色高亮边;再次双击即可缩回成一行。非 JSON 文本不会触发展开,悬停时也不会显示提示。展开后的长 JSON 支持横向滚动查看,不影响其它日志行。
右键批量展开 / 折叠:在日志区空白处或任意日志行上右键,菜单中提供 📖 展开全部 JSON(把当前可见的所有 JSON 消息一次性格式化为多行显示)和 📕 折叠全部 JSON(把已展开的 JSON 全部缩回一行)。执行后底部会弹出「已展开 N 条 JSON / 已折叠 N 条 JSON」的提示;没有可处理的 JSON 时提示 0 条,不会报错。
底部文本框支持实时输入消息发送给当前连接,支持直接发 JSON、二进制 hex 等任意文本。
| 控件 | 说明 |
|---|---|
| 文本框 | 输入要发送的任意文本(支持多行)。输入框高度可拖动上方调节条自由调整(见⑦折叠与布局)。 |
| 发送按钮 | 向当前选中连接发送消息。 |
| 广播到全部已连接 | 把同一条消息发送给当前所有已打开的连接(断开/连接中的连接会自动跳过)。 |
| 格式化 JSON | 如果输入的是 JSON 字符串,一键格式化(缩进美化),方便编辑长 JSON。 |
| 存为快捷项 | 把当前输入框里的内容快速保存为一条快捷发送项(进入④快捷发送流程)。 |
| Enter 发送 | 勾选后按 Enter 直接发送、Shift+Enter 换行;取消勾选则 Enter 换行、Ctrl+Enter 发送。 |
把常用消息(例如登录、进入房间、心跳、业务指令等)保存为按钮,点一下就发;支持参数化、循环、广播、每连接独立预设。
点「+ 添加」弹出编辑窗;已有项需点击按钮右侧的 ✎ 图标才能编辑(已取消双击编辑,避免快速连点发送时误弹出编辑框),字段说明:
| 字段 | 说明 |
|---|---|
| 名称 | 按钮上显示的文字,建议简短,例如"登录"、"发消息"。前 9 个可通过 Alt+1~Alt+9 快捷键触发。 |
| 消息内容 | 发送的具体文本,建议是 JSON;支持 {{参数名}} 占位符,发送时会被替换成对应值。 |
| 参数列表 | 每一行定义一个参数:参数名(和占位符对应,例如 username)+ 默认值(未为某连接设值时使用)。点"+ 参数"手动添加;点"扫描 {{ }} 占位符"可自动从消息内容里识别 {{xxx}} 添加参数。 |
| 格式化 JSON | 一键格式化消息内容,方便查看与编辑。 |
| 默认目标 | 「当前选中连接」= 只发给当前选中的那个;「全部已连接」= 默认广播。 |
| 默认开启循环 | 新增后默认开启循环发送(见 4.3)。 |
| 循环间隔 (ms) | 循环模式下两次发送之间的毫秒间隔,最小 50ms。 |
| 循环次数 | 总发送次数,填 0 表示无限循环。 |
🔁剩余次数(无限循环显示 🔁∞);再点一次(变成 ⏹)即可停止。{"cmd":"login","data":{"username":"{{username}}","password":"{{pwd}}"}},
参数定义 username=user1、pwd=123456。
然后选中客户端1点 ⚙ 设 username=alice,选中客户端2设 username=bob。
点按钮或开循环时,客户端1发出的是 alice、客户端2发出的是 bob,完全不用弹窗输入。
把多个快捷项按顺序串成一条任务,一键执行(也可以循环多轮),适合登录→进房→发言等多步流程或压测场景。
点「+ 新建任务」弹出编辑窗:
| 字段 | 说明 |
|---|---|
| 任务名称 | 任务条上显示的名字,例如"登录流程"、"登录+进房+发消息"。 |
| 步骤列表 | 任务按顺序执行的快捷项序列。下拉选择已有的快捷项 → 填"发完后等多少 ms" → 点「+ 添加到末尾」。可以拖拽左侧 ⠿ 手柄调整顺序,点右侧 × 删除该步骤。 |
| 默认目标 | "当前选中连接"或"全部已连接"。 |
| 默认开启循环 | 任务创建后默认循环执行多轮。 |
| 轮次间隔 (ms) | 一轮所有步骤发完之后,等多久再开始下一轮。 |
| 轮次 | 总共执行多少轮,1=只发一轮、0=无限轮次。 |
R轮次·S步骤 进度徽标(如 R2/5·S3/8,无限轮显示 R2/∞)。0/1000/500,轮次间隔设 2000,轮次设 10,
点 ▶ 就会自动跑完整套流程。
WebSocket 长时间没消息容易被网关断开,可启用心跳自动保持连接。每个连接独立配置。
| 参数 | 说明 |
|---|---|
| 启用心跳 | 开启后按固定间隔向服务端发送心跳内容。 |
| 间隔 (ms) | 两次心跳之间的时间,默认 5000(5 秒)。最小 100ms。 |
| 超时 (ms) | 发完心跳后等待服务端任意消息(含业务消息)的最长时间,超时则触发"超时处理"动作。 |
| 内容 | 心跳包要发送的文本,默认 ping,也可以是 JSON 字符串等。 |
| 超时处理 | "超时仅告警":只打印一条红色告警日志;"超时断开":主动断开 WebSocket(如果开启了"自动重连",则会触发重连)。 |
| 应用到全部 | 把当前连接的心跳配置(开关/间隔/超时/内容/动作)一次性同步给所有其它连接,省得逐个改。 |
三个区域都支持独立折叠,不用时完全不占空间,把屏幕留给消息日志。
| 区域 | 折叠方式 |
|---|---|
| 左侧「🛰 连接列表」 | 点右上角 ◀ 按钮、点标题"🛰 连接列表"文字、或按 Alt+L;折叠后工具栏最左侧出现「☰ 连接列表」按钮,点它展开。 |
| 右侧「⚡ 发送面板」 | 点右上角 ▶ 按钮、面板标题文字、或按 Alt+R;折叠后工具栏出现「⚡ 发送面板」按钮,点它展开。 |
| 面板内快捷发送区 | 点 ▾/▸ 按钮或"⚡ 快捷发送"标题,或按 Alt+Q;折叠后只保留标题一行,列表收起。 |
| 面板内批量发送区 | 点 ▾/▸ 按钮或"📦 批量发送"标题,或按 Alt+B。 |
底部输入框高度调节:输入框正上方有一条灰色小横杠,按住上下拖动可自由调整输入框高度(最小 46px,最大时仍给日志区保留至少 130px);双击恢复默认 76px。高度会自动保存。
折叠状态会被记忆(见⑨持久化),下次打开保持上次的样子。
点工具栏「⚙️ 配置」打开右上角配置浮层(再点一次或按 Esc 关闭)。配置面板分两块:
| 项 | 说明 |
|---|---|
| 🔍 模糊查找 | 输入关键词后,日志区只显示包含该文本的行(不区分大小写),实时生效。 |
| 🚫 屏蔽词 | 多个词用 | 分隔,例如 ping|pong|心跳,命中任意一个词的日志行都会被隐藏。 |
| 隐藏心跳日志 | 勾选后所有 ♥ 心跳收发日志都不显示(不影响心跳机制本身)。 |
| 清空过滤 | 一键清空查找关键词和屏蔽词,恢复显示全部日志。 |
见⑥心跳章节,心跳配置从原来的独立工具栏收进了这里,不占用常驻空间。
所有配置都会自动保存在当前浏览器的 localStorage 中,刷新页面、关闭浏览器再打开都会保留。具体包括:
| 类别 | 保存内容 |
|---|---|
| 连接列表 | 每个连接的名称、URL、自动重连开关、心跳配置、该连接对每个快捷项的参数预设。 |
| 快捷项 | 所有快捷项的名称、消息内容、参数定义、默认值、默认目标、循环配置(间隔/次数/默认开启)。 |
| 批量任务 | 所有批量任务的名称、步骤列表(顺序+每步间隔)、默认目标、循环配置(轮次间隔/轮次/默认开启)。 |
| 全局配置 | 日志模糊查找词、屏蔽词、是否隐藏心跳;界面折叠状态(左/右面板、快捷/批量栏);底部输入框高度。 |
点工具栏「⚙️ 配置」,在面板底部的💾 全量数据备份与恢复区可以看到当前本地数据统计(连接数、快捷项数、批量任务数、总大小):
wsdebug-backup-20261104-012345.json,带时间戳方便管理。| 快捷键 | 作用 |
|---|---|
| F1 | 打开/关闭本帮助面板。 |
| Alt+1 ~ 9 | 直接发送第 1~9 个快捷项(按面板上顺序)。 |
| Alt+Q | 折叠/展开右侧面板里的"⚡ 快捷发送"区。 |
| Alt+B | 折叠/展开右侧面板里的"📦 批量发送"区。 |
| Alt+L | 折叠/展开左侧连接列表。 |
| Alt+R | 折叠/展开右侧发送面板整体。 |
| Enter(默认) | 在底部输入框中发送消息。 |
| Shift+Enter | 在底部输入框中换行。 |
| Ctrl/⌘+Enter | 在"Enter 发送"关闭时发送;在快捷项编辑窗里保存。 |
| Esc | 关闭当前打开的编辑弹窗(快捷项/参数预设/批量任务/配置面板/帮助面板)。 |