Files
opsxapi/homepage/dist/docs/search-data.json
T
logan f6f61b35d8 文档去源码化:公开文档不再引导 git clone / run.sh(商业软件口径)
- 02-快速开始 整篇重写为最终用户视角:官网/微信群获取安装包 → 安装即用 →
  30 秒首请求 → 切换环境 → 试用与授权指引;删除环境要求表/克隆启动/命令表
- 01-介绍「开箱即用」改为安装即用口径;08-WebSocket 隧道说明改为随应用自动运行;
  19-FAQ CORS 排查项去掉 curl/run.sh;18-服务端部署建议改为私有化发行包交付
  (单二进制+静态资源,不依赖源码与构建工具链)
- 重建后 quickstart/落地页 git clone、run.sh、npm、cargo 残留均为 0;五页零断链
2026-10-16 12:19:30 +08:00

1 line
35 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[{"Slug":"intro","Title":"产品介绍","Group":"开始使用","Text":"OpsxAPI 是一款 本地优先 的专业接口工作台,面向运维与开发,把 HTTP、GraphQL、WebSocket、SSE、Socket.IO、MQTT 六种协议的调试放进同一个窗口。 无需注册、无需联网同步,数据全部保存在本地浏览器(localStorage),导出备份随时带走。 功能总览 能力 说明 六种协议 HTTP / GraphQL / WebSocket / SSE / Socket.IO / MQTT 集合管理 目录树、搜索、右键菜单、拖拽移动、多标签页 多环境变量 、 全局替换,一键切换环境 数据导入 OpenAPI/Swagger、Postman、Apifox、Apipost、cURL、HAR、Insomnia、Hoppscotch、Markdown 等 数据导出 OpenAPI 3.0、Postman v2.1、Markdown 文档、全量备份 代码生成 cURL / JavaScript fetch / Python requests / Go net/http 代理能力 本地 Gin 代理绕开 CORS;WebSocket 隧道支持自定义握手 Header 双端形态 浏览器(Web)与桌面端(Tauri)共用同一套界面 支持的协议与场景 协议 典型场景 特色 HTTP / REST 调试 REST 接口、运维平台 API 7 种方法、6 种请求体、3 种鉴权 GraphQL 查询网关、中台接口 Query + Variables 独立编辑 WebSocket 实时推送、行情、IM 自定义握手 Header(经本地隧道) SSE AI 流式输出、监控事件流 直连失败自动切代理、断点续传 Socket.IO Node 实时应用 事件监听、emit 参数、path/auth 配置 MQTT IoT 设备、消息总线 通配符订阅、QoS、自动重连 为什么选 OpsxAPI 数据主权 :所有集合、环境、历史保存在本机,不经过任何第三方服务器。 开箱即用 :安装即用、零配置;首次打开自带覆盖全部协议的示例集合。 工程友好 :导入自动建目录、路径参数自动转变量;导出即标准 OpenAPI,可回流 Apifox / Swagger 生态。 轻量克制 :一个 Go 二进制 + 一份前端,资源占用小,内网可部署。 提示 :想快速感受?直接看下一章《快速开始》,30 秒发出第一个请求。"},{"Slug":"quickstart","Title":"快速开始","Group":"开始使用","Text":"OpsxAPI 面向 最终使用者 交付:安装即用,无需搭建环境、无需接触源码。当前为 v0.1 公测 阶段,安装包通过以下方式获取: 官网 (邮件说明平台:macOS Apple Silicon / Intel,Windows 规划中); 微信交流群(设置 → 关于 → 微信群,群公告提供最新公测包)。 安装 macOS:下载 ,拖入「应用程序」即完成;首次启动自动初始化本地数据与示例集合,无需任何配置。桌面版内置本地服务(Mock、代理隧道、回显服务),随应用自动运行。 30 秒发出第一个请求 1. 启动 OpsxAPI,左侧是内置的「示例集合」(覆盖六种协议)。 2. 点击 HTTP · httpbin → 获取请求回显 。 3. 点击右上角 发送 。 4. 下方响应区显示 、耗时与 JSON 高亮响应体 —— 完成! 想验证更多能力?示例集合里的 Bearer 鉴权示例 、 GraphQL 国家查询 、 WebSocket echo 都指向公共演示服务,直接发送即可体验。 切换环境 顶栏环境选择器可在「正式 / 本地」之间切换: 等变量与前置 URL 随之生效。你可以把示例接口的域名改成自己的服务再发送。 试用与授权 桌面版含 30 天全功能试用 (首次启动自动开始,无需注册)。试用期结束后个人非商业用途可继续使用;商用授权与离线激活见 与 。 提示 :首次打开会自动创建两个环境(正式 / 本地)和示例集合,可随时在「设置 → 数据管理」中重置工作区。"},{"Slug":"interface","Title":"界面导览","Group":"开始使用","Text":"OpsxAPI 主界面由「活动栏 + 顶栏 + 侧栏 + 标签页 + 编辑区」组成: 活动栏(最左窄栏) 元素 作用 空间徽标(顶部) 切换 本地空间 / 我的空间 / 团队空间;云端空间显示同步状态点 接口 / 历史 / 测试 / 文档 / Mock 主导航:接口工作台、请求历史、自动化测试、接口文档、Mock 管理 授权徽章 试用倒计时或已授权状态,点击进入 设置 → 授权 设置 / 账号 设置中心;账号菜单(团队管理、立即同步、退出登录) 顶栏 元素 作用 + 新建 六种协议请求 / 目录(默认建在第一个集合) 导入 / 导出 数据导入(十种格式)与导出对话框 环境选择器 切换当前环境(变量与前置 URL 随之生效),可直达环境管理 左侧栏(接口 历史 分段) 接口 :集合树 — 点击请求在标签页打开,目录展开 / 折叠; 右键 新建 / 重命名 / 复制 / 导出 / 删除; 拖拽 移动(支持跨集合);顶部搜索实时过滤。 历史 :最近请求自动归档(状态码 / 耗时),点击回跳对应接口,支持一键清空。 标签页栏 同时打开多个接口,中键或 × 关闭;右键支持「关闭其他 / 关闭全部」。正在连接中的实时协议标签会显示呼吸圆点。 请求编辑区(上半部分) 按协议呈现不同编辑器: 协议 标签页 HTTP Params · Body · Headers · Cookies · Auth · 说明 GraphQL Query · Variables · Headers · Auth WebSocket 消息 · 握手配置 · 说明 SSE 事件流 · 连接配置 · 说明 Socket.IO 事件 · 连接配置 · 说明 MQTT 消息 · Broker / 订阅 · 发布 · 说明 响应区(下半部分) HTTP / GraphQL :响应体(Pretty JSON 高亮)、Raw、响应头,右上角状态 / 耗时 / 大小 / 复制。 实时协议 :分色消息日志(接收 · 绿、发送 · 蓝、系统 · 灰、错误 · 红),顶部实时统计收发条数与连接时长。"},{"Slug":"http","Title":"发送 HTTP 请求","Group":"请求调试","Text":"发送请求 1. 选择方法(GET / POST / PUT / PATCH / DELETE / HEAD / OPTIONS)。 2. 输入 URL,支持 形式的变量(见《环境与变量》)。 3. 点击 发送 ,或直接在 URL 输入框按 Enter 。 请求默认经本地 Gin 代理( )发出,天然绕开浏览器 CORS 限制。 Params(查询参数) 键值对编辑器,每行可勾选启用 / 停用、填写说明。URL 中已有的查询串会被拆分到表格里,两边双向同步。 Body(请求体) 模式 适用场景 none GET 等无体请求 JSON REST 接口(默认自动补 ,带格式化按钮) XML / Text / HTML 原始报文 x www form urlencoded 表单提交 form data multipart 文本字段(文件上传请用代码生成的 cURL) Headers / Cookies Headers:键值对,支持 ; 、 由 Auth / Cookies 标签统一管理时避免重复。 Cookies:键值对,发送时自动拼接为 请求头。 代码生成 点击 URL 栏右侧 代码 ,可生成: cURL(可直接在终端执行) JavaScript fetch Python requests Go net/http 生成内容保留 原样,便于粘贴到脚本后再替换。 响应面板 标签 内容 响应体 JSON 自动格式化 + 语法高亮;其他类型原样展示 Raw 未格式化的原始文本 响应头 全部响应头表格 右上角常驻 状态码 / 耗时 / 大小 / Content Type ,并提供「复制体」按钮。"},{"Slug":"auth","Title":"接口鉴权","Group":"请求调试","Text":"在 HTTP / GraphQL / SSE 请求的 Auth 标签中选择鉴权方式: Bearer Token Token 支持 变量引用 —— 推荐把 token 放进环境变量,一次配置全局生效。 Basic Auth 填写用户名 / 密码,自动进行 Base64 编码后放入 头。 API Key 字段 说明 Key 名 如 值 支持 位置 Header(默认)或 Query 参数 组合规则 鉴权产生的 Header 会与 Headers 标签中的同名项合并(鉴权优先)。 API Key 放 Query 时,会追加到 Params,不会重复出现在 Headers。 导入 OpenAPI / Postman 时,文档中声明的 会自动映射到对应鉴权方式。 注意 :鉴权信息保存在本地集合数据中。如需分享集合,请先通过「导出」审查是否包含敏感 token。"},{"Slug":"env","Title":"环境与变量","Group":"请求调试","Text":"前置 URL 环境可配置 前置 URL (如 )。配置后,请求里只需写相对路径: URL 输入框会以 前缀块 + 路径 的形式一体展示,前缀部分不可误编辑(点击可跳转环境管理); 切换环境即自动换成对应服务地址 ,无需改请求; 路径以 开头(或为空)才启用拼接;写完整 地址的请求不受影响; 未配置前置 URL 的环境,请求仍可写完整 URL 或用 。 历史数据自动迁移:旧的 会被自动转为「前置 URL + /path」, 变量写入环境的前置 URL 字段。 变量语法 在 URL、Params、Headers、Cookies、Body、鉴权字段中,使用双花括号引用变量: 发送时统一替换为 当前启用环境 中同名变量的值;未定义的变量保留原样,便于发现遗漏。 切换环境 顶栏环境切换器显示 彩色单字徽标 + 环境名 + 变量数 ,点击弹出环境列表(当前环境带「当前」标记),一眼防误发;底部可进入「管理环境」或「不使用环境」。 管理环境 顶栏 环境 按钮打开管理弹窗(左侧环境列表 + 右侧编辑区): 左栏 :环境列表(徽标 + 名称 + 当前标记),底部虚线按钮新建环境。 右栏 :提示条(变量引用语法 + 文档直达)、环境重命名、设为当前 / 取消使用、 复制环境 、删除;变量表支持 按名称 / 描述搜索 、逐行启用停用、内联编辑。 所有修改即时生效并自动保存。 输入 {{ 自动补全 在 URL 输入框或任意「值」输入框键入 ,会弹出当前环境的变量浮层: ↑↓ 选择、Enter / Tab 插入完整的 ;Esc 关闭。 浮层同时显示变量值,选之前即可确认。 内置示例环境: 环境 baseUrl token 正式 demo token 本地 dev token 变量从哪来自动生成 来源 行为 导入 OpenAPI / Swagger 地址写入 ;路径参数 转为 并写入示例值 导入 Postman 写入当前环境 手动输入 在环境面板随时增改 实际地址预览 URL 含 时,编辑器会在 URL 栏下方实时显示替换后的实际地址,切换环境立即更新。 提示 :路径参数用变量而不是写死,是接口可复用的关键 —— 复制接口后只改变量值即可调试另一个资源。"},{"Slug":"graphql","Title":"GraphQL","Group":"请求调试","Text":"编辑查询 GraphQL 请求由三部分组成: 部分 说明 Query GraphQL 查询语句,支持变量定义 Variables JSON 对象,随查询一起发送;非法 JSON 会红框提示 Headers / Auth 与 HTTP 请求一致 发送 点击 执行 (或 URL 栏按 Enter)。实际发送的是标准 GraphQL over HTTP: 响应面板会自动格式化 / ,字段名高亮。 内置示例 示例集合中的「国家查询 · countries」连接公共 GraphQL 服务 \u003chttps://countries.trevorblades.com/graphql ,无需鉴权,可直接体验。 最佳实践 把 endpoint 存为 ,环境切换即切换网关。 需要鉴权时在 Auth 标签配置 Bearer,不必手写 Header。 想看实际报文?点 代码 生成 cURL,即为此查询的完整 HTTP 请求。"},{"Slug":"websocket","Title":"WebSocket","Group":"请求调试","Text":"连接 1. 填写 或 地址。 2. 点击 连接 ;状态点变绿(已连接)后即可收发消息。 3. 再次点击按钮即断开。 消息收发 消息日志 :接收(绿)/ 发送(蓝)/ 系统(灰)/ 错误(红)分色展示,顶部统计 ↑↓ 条数与连接时长。 发送框 :支持 JSON / 纯文本; ⌘/Ctrl + Enter 快速发送;「格式化 JSON」一键美化。 子协议 「握手配置」标签中的 子协议 填逗号分隔列表,例如: 自定义握手 Header(隧道模式) 浏览器原生 WebSocket 不能 携带自定义 Header(如 、 )。OpsxAPI 的处理方式: 1. 「握手配置」中填写 Header 后,工具自动改走 本地 Gin 隧道 : 浏览器 → Gin (普通 WS) Gin → 目标服务器(携带你填的全部 Header) 2. 不填 Header 时直连目标,零额外开销。 说明 :隧道由应用自带的本地服务提供 —— 桌面版随应用自动运行,无需任何手动配置。 调试技巧 消息过多时点「清空」;日志上限 500 条,超出自动滚动淘汰。 把常用报文保存在「说明」里,或为不同报文建多个 WS 请求节点。"},{"Slug":"sse","Title":"SSE 事件流","Group":"请求调试","Text":"连接事件流 1. 填写 SSE 地址(如 )。 2. 点击 连接 ,事件按到达顺序流入消息日志。 3. 每条消息按 名称归类显示; 为 JSON 时自动格式化。 直连与代理自动切换 默认 直连 目标站(fetch 流式读取,延迟最低)。 直连因 CORS / 网络失败时,自动降级走 本地 Gin 流式代理 ,日志中会提示切换过程,无需手工干预。 断点续传(Last Event ID) 「连接配置」中填写 Last Event ID,连接时以 请求头携带,支持断点续传的流会在该事件之后继续推送。 连接配置项 配置 说明 Query 参数 / Headers 以键值对附加 Last Event ID 断点续传游标 仅显示 data 内容 开启后只显示 载荷;关闭则连同 名称一起显示 鉴权 与 HTTP 相同(Bearer / Basic / API Key) 典型场景 LLM 流式输出接口( ) 监控 / 审计事件流 需要长期挂机观察的推送通道"},{"Slug":"socketio","Title":"Socket.IO","Group":"请求调试","Text":"连接 1. 填写服务地址( 不含 路径),如 。 2. 点击 连接 ,状态变为「已连接」后即可收发事件。 监听事件 「连接配置」→ 监听事件 填逗号分隔的事件名: 留空则接收全部服务端事件(onAny 模式)。事件名在每条日志中标注。 发送(emit) 「事件」标签底部的发送区: 事件名 :如 参数 :JSON 数组,作为 的参数 连接选项 以 JSON 配置传给 socket.io client: 选项 说明 path 服务端挂载路径,默认 transports / ,默认两者皆可 auth 握手鉴权载荷,支持 提示 :浏览器直连外部站点同样受 CORS 限制,Socket.IO 服务端需配置对应 origin,或把服务与本工具部署在同源下。"},{"Slug":"mqtt","Title":"MQTT","Group":"请求调试","Text":"连接 Broker 浏览器环境要求 WebSocket 形式 的 Broker 地址: 配置 说明 用户名 / 密码 可选,支持 ClientId 默认随机生成;同一 Broker 上必须唯一 QoS 0 至多一次 · 1 至少一次 · 2 恰好一次 订阅 「Broker / 订阅」中填写逗号分隔的主题,支持通配符: 注意 :订阅在 建立连接时 生效,修改主题后需断开重连。 发布 「发布」标签配置主题与 Payload(JSON / 纯文本),点击发布按钮即送达;已发布消息以蓝色出现在日志中并标注主题。 公共测试 Broker Broker 地址 EMQX HiveMQ 两个浏览器窗口连接同一主题,即可互相收发验证。 行为说明 断线自动重连(3 秒间隔),状态点显示「重连中」。 消息日志上限 500 条;QoS 与主题逐条标注。"},{"Slug":"import","Title":"数据导入","Group":"数据管理","Text":"顶栏 导入 打开导入对话框,支持三种来源: 来源 说明 粘贴文本 / cURL 直接粘贴任意受支持格式的内容 文件导入 选择或拖入 / / / / URL 导入(Swagger) 填写 OpenAPI 地址,经本地 Gin 代理拉取,避开 CORS 格式 自动识别 ,也可手动指定。 支持格式 格式 细节 OpenAPI 3.0 / 3.1、Swagger 2.0 JSON 或 YAML;Apifox 导出的 OpenAPI 同样适用 Postman Collection v2.0 / v2.1,含鉴权、变量、GraphQL body Apipost 项目 格式(宽容解析) cURL 引号、续行、 / / / 、cookie、代理等参数 HAR 按域名分组、相同请求去重 Insomnia 导出文件 v3 / v4,含 workspace / group 层级 Hoppscotch 集合 JSON(数组或单对象) Markdown 提取文中的 tags /pets/{petId} {{petId}} servers baseUrl variable` 当前环境变量 结果确认 导入完成显示汇总:新建集合、接口数量、写入的环境变量与告警(如跳过的文件上传字段)。集合名重复时自动追加序号。"},{"Slug":"export","Title":"导出与代码生成","Group":"数据管理","Text":"顶栏 导出 (多集合时可选择目标集合): 格式 用途 OpenAPI 3.0 · JSON / YAML 回流 Apifox、Swagger UI、代码生成器 Postman v2.1 直接导入 Postman Markdown 接口文档 带目录、参数表格、请求体代码块,可放 Wiki 全量备份 全部集合 + 环境,用于迁移与灾备 每种格式均支持 复制到剪贴板 与 下载文件 ;对话框内实时预览导出内容。 全量备份与恢复 备份文件是包含 标记的 JSON。 恢复:导入对话框 → 粘贴备份内容或选择备份文件 → 格式自动识别为「OpsxAPI 备份」。 代码生成(单请求) 在 HTTP / GraphQL 编辑器点 代码 : 目标 说明 cURL 含方法、头、体、cookie,可直接执行 JavaScript fetch 风格 Python requests 含 完整脚本 Go net/http 完整 函数 保留原样输出,方便接入你自己的配置体系。 提示 :导出的 OpenAPI 中,目录名会成为 ,请求说明写入 ,鉴权自动生成 。"},{"Slug":"mock","Title":"Mock 数据","Group":"数据管理","Text":"Mock 数据 联调时后端接口没就绪?OpsxAPI 内置 Mock.js 风格的数据生成器 ,两种用法覆盖绝大多数场景: 1. 显式表达式 —— 在参数值、Body 中直接写 、 ; 2. 智能匹配 —— 开启后按 字段名 自动套用规则表( → 姓名、 → 邮箱…),一行不用写。 开启与配置 「设置 → 数据生成」(或请求编辑器的 Mock 工具按钮): 启用 Mock 数据 :总开关,关闭后 表达式按普通文本原样发送; 智能 Mock 匹配 :JSON Body 字段值未写表达式时,按字段名匹配规则自动生成; 智能匹配规则表 :内置 61 条 默认规则(用户名、邮箱、手机号、价格、时间戳……),数据类型(string / number / integer / boolean)、匹配方式(通配符 / 完全匹配 / 正则)、匹配规则(如 )、Mock 表达式、备注与启用开关,支持搜索、新增、删除与恢复默认。 规则 从上到下 匹配,先命中先用;类型需与 JSON 字段实际类型一致(KV 参数一律按 string 匹配)。 表达式速查 表达式 说明 示例输出 中文姓名 邮箱 手机号 形式 11 位 身份证号 18 位 UUID / GUID 整数 小数(保留 2 位) 布尔 随机字符串 日期时间 / 日期 / 时间 — 毫秒时间戳 / / URL / 域名 / IPv4 — / / 省市区 / 中文标题 / 句子 — 图片地址 picsum 随机图 从列表中选择 未列出的写法会 原样发送 ,可放心与真实值混用。 在请求中使用 Params / x www form urlencoded / form data :值一栏直接填表达式。 JSON Body :叶子值写表达式,或交给智能匹配: Body 工具栏提供两个辅助按钮: 智能填充 :按规则把 JSON 各字段值批量替换为对应 表达式,生成可编辑的 Mock 模板; Mock 预览 :即时查看发送时实际生成的数据,不必真的发请求。 生效范围 生效:Query 参数、JSON / XML / Text Body、x www form urlencoded、form data、GraphQL Variables; 不生效:Headers、Cookies、鉴权字段(避免意外改坏签名与令牌)。 提示:Mock 在 发送瞬间 求值,同一请求每次发送都会得到新数据;预览结果仅供核对格式。 本地 Mock 服务(/mock) 除了发送时的离线 Mock,还能把接口 发布成本地 Mock 服务 ,给前端 / 同事直接联调(类似 Apifox 的 Mock URL): 1. 登录并切换到「我的空间」或团队空间(Mock 按空间隔离); 2. HTTP 请求 URL 行点 Mock 链接 → 选择响应状态码与延迟 → 发布 (一次发布当前空间集合内全部 HTTP 接口); 3. 得到地址: (每空间一个 16 位随机片段,不可枚举、不暴露归属),例如 。 特点: 独立监听端口 :Mock 服务默认跑在 (可用环境变量 修改),与主服务 8787 分离,内网同事按 直连; Mock 管理页 :活动栏「Mock」视图集中管理已发布路由 —— 方法 / 路径 / 状态码 / 响应格式 / 延迟(0–5s)/ 启用开关,支持保存草稿、一键发布全部、试运行与 GET /demo 示例; 访问控制 :可开启 Bearer 密钥校验(只存摘要、可随时替换);来源默认仅本机与内网网段,公网访问需显式设置 ; 一键建 Mock :HTTP 编辑器可「用本次响应创建 Mock」,把真实返回直接变成 Mock 模板; 每次请求随机生成 :响应模板里的 、 等表达式由服务端实时求值; 发布时自动把智能 Mock 规则烘焙进模板(开启智能匹配时); 非 GET 接口可用 快速验证;延迟最高 5 秒,用于模拟慢接口 / loading 态。 频率限制(防滥用) 本地 Mock 服务按 IP + 空间 限流: 20 QPS(每秒 20 次)或 60 QPM(每分钟 60 次) ,超限返回 与 。依据 :未经授权或滥用行为平台有权采取限流、暂停服务等措施; 通过技术手段规避限流属于违规行为 。Mock 定位是联调辅助,请勿当作对外流量服务使用。"},{"Slug":"manage","Title":"集合与历史","Group":"数据管理","Text":"新建 入口 行为 顶栏「+ 新建」 快捷菜单,建在第一个集合 树右键「新建请求 / 目录」 精确指定位置 新建对话框 选择类型(六协议 + 目录)、命名、目标集合与目录 接口名自动避免重复(追加序号)。 集合树操作 操作 方式 重命名 右键 → 重命名 复制 右键 → 复制(深拷贝子树,名字加「副本」) 移动 拖拽到目标目录(支持跨集合) 删除 右键 → 删除(直接生效,请先备份重要数据) 搜索 侧栏搜索框,匹配名称 / 方法 / URL 标签页 点击树节点在标签页打开;同时打开数量不限。 中键 / × 关闭;右键「关闭其他 / 关闭全部」。 关闭实时协议(WS / SSE / MQTT…)标签时自动断开连接。 历史记录 每次 HTTP / GraphQL 发送记录:时间、方法、接口名、状态码,失败标红。 点击记录跳回对应接口;最多保留 100 条;可一键清空。 数据存储与备份 位置:浏览器 localStorage(键 ),自动保存(防抖 400ms)。 内容:集合、环境、历史、设置。标签页会话与实时消息不落盘。 备份:导出 → 全量备份;恢复:导入备份文件。 重置:设置 → 重置工作区(恢复初始示例,请先备份)。 注意 :桌面端与浏览器是两份独立的 localStorage。跨端迁移请使用全量备份 / 导入。"},{"Slug":"testing","Title":"自动化测试","Group":"自动化测试与 AI","Text":"自动化测试 把日常联调的接口串成 场景用例 ,一条龙验证业务流程。三种触发方式共用同一套用例模型: 方式 说明 适合 手动运行 用例编排好后点「运行」 日常自测、回归 AI 生成 模型按接口清单自动编排步骤与断言 快速起盘、补断言思路 定时任务 应用运行期间按间隔自动执行 持续监控、冒烟 场景用例 从活动栏「测试」进入。用例 = 有序步骤列表,每个步骤: 引用一个 HTTP 接口 (从集合中选择,可跨集合、跨目录); 断言 :状态码 / 耗时 / Header / Body 四类目标,支持 等于、不等于、大于、小于、包含、存在 与 JSONPath 取值比较; 变量提取 : → 环境变量 ,后续步骤 URL / Body 用 引用,实现「创建 → 查询 → 删除」链式传值; 可单独禁用、上下移动、删除。 用例级选项「 失败后继续 」:默认失败即停(快速定位首个问题);打开后跑完全部步骤再看整体报告。 运行报告 统计卡:通过 / 失败步骤数、总耗时、断言数、通过率; 步骤明细:方法 + URL + 状态码 + 耗时,逐条断言的期望 / 实际对照(可按 通过 / 失败 过滤); 「再次运行」一键回归;「导出报告」生成 Markdown(含断言对照表,适合贴缺陷单)或 JSON( 结构,供 CI / 脚本二次处理); 每个用例保留最近 50 次运行记录,可下拉切换历史报告。 定时任务 用例头部的 ⏱ 按钮或左侧「定时任务」入口,两种节奏: 固定间隔 :5 / 15 / 30 / 60 分钟 · 6 小时 · 每天; Cron 表达式 :标准 5 段(分 时 日 月 周,本地时区),例如每 15 分钟 、每个工作日 9 点半 ; 独立 启用 / 暂停 开关,显示下次运行时间与上次结果; 调度器每 15 秒巡检一次,同一用例运行中不会重复触发;每个任务环形保留最近 30 条运行日志; 应用保持运行时生效 :OpsxAPI 窗口(或 Web 页面)开着才会按时触发并记录报告,关闭后自动暂停 —— 适合工作时段的持续监控,不能替代服务器侧的 CI。 提示:定时触发的请求同样走当前环境与 Mock 设置;跨环境回归前先在顶栏切换环境。 AI 生成用例 见 。配置模型供应商后,「AI 生成」会读取集合的 HTTP 接口清单(方法、URL、Body 示例),按业务依赖编排步骤、断言与变量提取,生成前可附加一句要求(如「重点覆盖登录态与分页」),预览确认后保存。"},{"Slug":"ai","Title":"AI 助手","Group":"自动化测试与 AI","Text":"AI 助手 接入 OpenAI 兼容协议 的大模型,为自动化测试提供 AI 能力。模型调用直连供应商;供应商配置(包括密钥)随当前工作区保存,团队工作区会同步工作区数据。 配置模型供应商 设置 → 大模型 ,选择预设并点击「+」,在右侧填写模型 ID、密钥和 Base URL,测试连接后点击「保存配置」。内置常用预设: 供应商 Base URL 模型示例 DeepSeek 智谱 GLM Moonshot Kimi OpenAI Ollama 本地 API Key :Ollama 等本地服务可留空; 测试连接 :发一条 ping 验证地址 / 密钥 / 模型名;离线时也可先保存,之后再测试; 多个供应商时可在左侧选择,保存后点「设为默认」指定自动化测试使用的模型。 AI 生成场景用例 自动化测试视图 →「 AI 生成 」: 1. 选择集合(AI 读取其中全部 HTTP 接口:方法、URL、Body 示例); 2. 可选填写一句要求,如「覆盖下单 → 支付 → 查询流程,重点断言金额字段」; 3. 模型按业务依赖编排步骤,输出断言与变量提取(如 ,后续步骤用 ); 4. 预览生成的步骤清单(未识别的接口会自动跳过并提示),确认后保存为正式用例。 生成结果只是起点 —— 步骤、断言、提取规则都可再手动调整。 隐私与边界 API Key 随当前工作区数据保存;团队工作区会同步,导出全量备份时也会包含。分享工作区或备份文件前请检查密钥; 供应商收到的内容为接口清单摘要(方法 / URL / Body 片段)与你的指令, 不含 环境变量值与 API Key; 未配置供应商时,Mock 数据、环境变量等离线功能不受影响。 常见问题 生成失败? 依次检查:Base URL 是否带 、模型名是否属于该供应商、Key 是否有效(用「测试连接」验证)、本机能否直连该域名(内网代理环境注意放行)。 想用公司内网模型? 添加自定义供应商,Base URL 填内网网关地址即可(需兼容 OpenAI Chat Completions 协议)。"},{"Slug":"account","Title":"账号与团队","Group":"账号与团队","Text":"账号与团队 登录后可使用 云端空间 :个人空间「我的空间」与团队共享空间,数据保存在本机服务的 SQLite 数据库( ),不上传任何第三方。 注册 / 登录 最左 活动栏 底部 登录 按钮打开弹窗: 注册只需 昵称 + 邮箱 + 密码(≥ 6 位); 登录态保存在本机,令牌失效会自动清除。 空间切换 活动栏 顶部空间徽标 (未登录时为产品 Logo,云端空间显示彩色徽标)点击弹出空间列表: 空间 说明 本地空间 未登录时默认;数据在浏览器 localStorage,不上云 我的空间 个人云端空间,注册即有;换浏览器 / 换设备登录即得同一份数据 团队 · ×× 团队共享空间,成员读写同一份数据 首次切入空的云端空间时,会自动把 当前本地数据播种上去 ; 在云端空间内的所有改动(接口、环境、测试用例、设置) 自动同步 (改动后约 1.5 秒),活动栏底部头像上的状态点显示 已同步 / 同步中(闪烁)/ 同步失败(红); 切回本地空间时恢复离开前的本地快照,两端互不覆盖; 同步策略为 后写覆盖 :多人同时编辑以最后一次保存为准。 团队管理 活动栏账号菜单或空间菜单 → 团队管理 : 新建团队 :创建后自动获得同名共享空间; 重命名 / 删除 :团队卡片右上角的 ✎ / 🗑(仅创建者可见)。重命名就地保存;删除需二次确认,将同时删除成员关系、共享空间与已发布 Mock 数据,不可恢复(若当前正停在该团队空间,会自动切回本地空间); 添加成员 :输入已注册成员邮箱(创建者可操作),邀请时可顺手点选 擅长 预设;成员登录后即可看到并切换到该团队空间; 成员与擅长 :每个团队卡片展示成员列表(头像 / 名称 / 角色 / 擅长标签)。擅长支持预设点选(前端、后端、全栈、测试、运维、移动端、数据库、AI、接口设计、安全)与自定义输入,空格或顿号分隔;创建者可修改任何成员的擅长,成员只能修改自己的(行尾「擅长」按钮)。 数据与安全 密码加盐哈希后存储;令牌为随机 Bearer Token,可随时退出登录作废; 云端空间单份数据上限 20MB; 团队空间权限:全体成员可读写,仅创建者可管理成员与修改他人擅长; 不登录不影响任何本地功能。"},{"Slug":"license","Title":"授权与激活","Group":"参考","Text":"授权与激活 OpsxAPI 桌面版采用「 先试用、后授权 」模式: 30 天全功能试用 从应用首次启动自动开始,无需注册账号、无需信用卡。试用期结束后,个人非商业用途可继续使用;在工作中商用需购买授权( )。 两种授权码 类型 前缀 激活方式 适合 在线授权 联网激活,绑定设备,支持自助解绑换机 有网络的日常环境 离线许可证 本地验签激活,同样绑定设备 隔离内网 / 完全无网络 激活步骤 1. 复制授权码(购买后邮件发放,形如 ); 2. 打开 设置 → 授权 ,粘贴到「激活许可证」输入框(邮箱可选,用于授权关联); 3. 点击「激活」。在线授权会联系授权服务器校验;离线许可证全程不联网,本地 Ed25519 验签即通过。 激活成功后,活动栏授权徽章变为绿色「已授权」,面板显示计划类型、到期时间与设备数。 状态与规则 设备绑定 :授权绑定设备而非账号。包年 3 台、永久 5 台;在 设置 → 授权 点「解绑本机」可迁移到新机器; 离线容忍 :在线授权连续 30 天无法联网验证时需重新联网一次;离线许可证本地自验、永不联网也有效; 防伪验证 :服务器响应带 Ed25519 签名,客户端内置公钥校验,防假服务器与篡改缓存;本机时钟明显回拨时拒绝激活; 周期校验 :激活后应用每周静默验证一次,授权被吊销会自动降级为未授权状态。 常见问题 换电脑怎么办? 旧机器 解绑本机 → 新机器粘贴同一授权码激活。 离线证能用多久? 最长 365 天,到期后在管理端重签新序列号(可同设备)。 试用期到了功能会被锁吗? 不会硬锁。个人非商业继续使用;商用请授权。"},{"Slug":"server-api","Title":"服务端 API 参考","Group":"参考","Text":"本地服务(Gin)默认监听 ,可用环境变量 修改。所有端点仅监听本机回环,供 Web UI 与桌面端调用。 端点总览 方法 路径 用途 GET 健康检查 POST HTTP 代理(全方法、自定义头、超时) POST NDJSON 流式代理(SSE / chunked 透传) POST 建立到目标 WS 的隧道会话 GET 浏览器 attach 到隧道会话(双向桥接) POST 关闭隧道会话 GET 本文档站 HTTP 代理 响应: 请求体 支持 / / / / / , 为原始报文; 可选。 流式代理 请求体与 HTTP 代理一致,响应为 NDJSON 事件流: WebSocket 隧道 attach 后第一条消息为控制帧 ;此后浏览器与目标服务器双向透传。 安全边界 仅允许 (代理)与 (隧道)目标。 拒绝云元数据地址(169.254.169.254 等)防 SSRF。 单响应上限 10 MiB;隧道会话 10 分钟无活动自动回收。 部署建议 私有化交付随授权提供发行包( 单二进制 + 官网静态资源),解压即用,不依赖源码与构建工具链; 生产环境建议置于内网,并按需增加鉴权反向代理;数据目录(SQLite)做好备份策略。"},{"Slug":"faq","Title":"常见问题","Group":"参考","Text":"请求报 CORS 错误? Web 端请求默认经本地 Gin 代理(gin proxy)发出,不会遇到 CORS。若仍报错: 重启应用后再试(本地服务随应用自动运行)。 检查本机防火墙 / 安全软件是否拦截了应用的本地回环端口。 桌面端优先走 Tauri 原生网络栈,同样不受 CORS 限制。 浏览器 WebSocket 不能加自定义 Header? 规范限制。在 WS「握手配置」里填写 Header 后,OpsxAPI 自动改走本地 Gin 隧道(见《WebSocket》章节),Header 由 Gin 在握手时代为携带。不填 Header 则直连。 外部 wss:// 地址连不上(DNS 失败)? 本机网络环境可能限制部分域名解析。可先用 或换用公共 echo 服务验证;自建服务请确认防火墙与证书。 MQTT 一定要 wss:// 吗? 浏览器只能通过 WebSocket 连 MQTT。常见 Broker 的 WS 端口:EMQX (TLS)、 (明文,仅 http 页面)。 TCP 直连仅在桌面原生环境可行。 数据存在哪里?换电脑怎么办? 集合 / 环境 / 历史保存在浏览器 localStorage。迁移: 导出 → 全量备份 生成 JSON,在新设备 导入 即可。 误删了接口 / 想回到初始状态? 设置(顶栏 ⋯)→ 重置工作区,恢复内置示例集合。日常请养成导出备份的习惯。 SSE 事件流看着卡住了? 事件频率低(如告警流)属正常,等待即可。 部分网关会缓冲 SSE,工具会在直连失败时自动切换 Gin 流式代理;若仍无事件,检查中间层(Nginx 需关闭 )。 发送按钮点击后没反应? 查看响应区是否有红色错误提示(如代理不可达)。 代码 生成 cURL 在终端执行可快速分辨是工具问题还是网络 / 接口问题。 支持文件上传吗? form data 当前支持文本字段;文件上传请用 代码 生成的 cURL / 脚本执行。 更多问题? 服务端能力与边界:见《服务端 API 参考》 各协议用法:见左侧「请求调试」分组"}]