官网内容质量升级:基于代码真实功能重写卖点与文档
先做全量功能盘点(编辑器/测试/Mock/AI/导入导出/服务端/桌面授权),再对齐内容: - 落地页:hero 副标与药丸补 AI 用例/Cron 定时/智能 Mock;「为什么选」4→8 卡 (新增 自动化测试闭环/AI 生成用例/智能 Mock 双引擎/内网文档分享);功能区 6→12 卡 (新增 测试/AI/智能 Mock/历史重放/系统代理/文档快照);对比表 +3 行(断言/AI/Cron); 定价卡对齐 3/5 台与真实权益;新增 bot/list-checks/flask/clock 图标 - 文档:03-界面导览 重写为活动栏时代(含授权徽章/空间切换);16-测试 补 5 段 Cron 章节(示例/15s 巡检/30 条日志/防重入)与 JSON 报告格式;14-Mock 补 61 条规则数、 独立端口 8798/OPSXAPI_MOCK_ADDR、Mock 管理页、Bearer 与来源控制、一键建 Mock - 新增 21-授权与激活 文档(试用条款/LIC- vs LICOFF-/解绑/离线容忍/防伪)并注册目录 - 21 页文档全量重建;7 页零断链验证 + DOM 结构核验(卡片/图标/药丸计数)通过
This commit is contained in:
1 parent
904a85ab7f
commit
cdaba44373
32 files changed
+265
-80
No files matched your search
@@ -1,22 +1,26 @@
|
|||||||
OpsxAPI 主界面分为五个区域:
|
OpsxAPI 主界面由「活动栏 + 顶栏 + 侧栏 + 标签页 + 编辑区」组成:
|
||||||
|
|
||||||
|
## 活动栏(最左窄栏)
|
||||||
|
|
||||||
|
| 元素 | 作用 |
|
||||||
|
| --- | --- |
|
||||||
|
| 空间徽标(顶部) | 切换 本地空间 / 我的空间 / 团队空间;云端空间显示同步状态点 |
|
||||||
|
| 接口 / 历史 / 测试 / 文档 / Mock | 主导航:接口工作台、请求历史、自动化测试、接口文档、Mock 管理 |
|
||||||
|
| 授权徽章 | 试用倒计时或已授权状态,点击进入 设置 → 授权 |
|
||||||
|
| 设置 / 账号 | 设置中心;账号菜单(团队管理、立即同步、退出登录) |
|
||||||
|
|
||||||
## 顶栏
|
## 顶栏
|
||||||
|
|
||||||
| 元素 | 作用 |
|
| 元素 | 作用 |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| + 新建 | 快捷创建各协议请求 / 目录(默认建在第一个集合) |
|
| + 新建 | 六种协议请求 / 目录(默认建在第一个集合) |
|
||||||
| 导入 / 导出 | 打开数据导入、导出对话框 |
|
| 导入 / 导出 | 数据导入(十种格式)与导出对话框 |
|
||||||
| 环境选择器 | 切换当前环境(变量随之生效),「⚙ 环境」管理环境与变量 |
|
| 环境选择器 | 切换当前环境(变量与前置 URL 随之生效),可直达环境管理 |
|
||||||
| 🌙 / ☀️ | 明暗主题切换 |
|
|
||||||
| ⋯ | 设置(主题、超时、重置工作区) |
|
|
||||||
|
|
||||||
## 左侧集合树
|
## 左侧栏(接口 | 历史 分段)
|
||||||
|
|
||||||
- 点击请求 → 在标签页中打开;点击目录 → 展开 / 折叠。
|
- **接口**:集合树 — 点击请求在标签页打开,目录展开 / 折叠;**右键** 新建 / 重命名 / 复制 / 导出 / 删除;**拖拽**移动(支持跨集合);顶部搜索实时过滤。
|
||||||
- **右键**任意节点:新建、重命名、复制、导出、删除。
|
- **历史**:最近请求自动归档(状态码 / 耗时),点击回跳对应接口,支持一键清空。
|
||||||
- **拖拽**请求或目录到另一个目录,即可移动(支持跨集合)。
|
|
||||||
- 顶部搜索框按名称 / 方法 / URL 实时过滤。
|
|
||||||
- 底部为**历史记录**:显示最近请求的状态码与耗时,点击可回跳到对应接口。
|
|
||||||
|
|
||||||
## 标签页栏
|
## 标签页栏
|
||||||
|
|
||||||
|
|||||||
@@ -7,11 +7,11 @@
|
|||||||
|
|
||||||
## 开启与配置
|
## 开启与配置
|
||||||
|
|
||||||
顶栏 **⋯ → Mock 数据**(或「设置 → Mock 数据」):
|
「设置 → 数据生成」(或请求编辑器的 Mock 工具按钮):
|
||||||
|
|
||||||
- **启用 Mock 数据**:总开关,关闭后 `@` 表达式按普通文本原样发送;
|
- **启用 Mock 数据**:总开关,关闭后 `@` 表达式按普通文本原样发送;
|
||||||
- **智能 Mock 匹配**:JSON Body 字段值未写表达式时,按字段名匹配规则自动生成;
|
- **智能 Mock 匹配**:JSON Body 字段值未写表达式时,按字段名匹配规则自动生成;
|
||||||
- **智能匹配规则表**:数据类型(string / number / integer / boolean)、匹配方式(通配符 / 完全匹配 / 正则)、匹配规则(如 `*name*`)、Mock 表达式、备注与启用开关,支持搜索、新增、删除与恢复默认。
|
- **智能匹配规则表**:内置 **61 条**默认规则(用户名、邮箱、手机号、价格、时间戳……),数据类型(string / number / integer / boolean)、匹配方式(通配符 / 完全匹配 / 正则)、匹配规则(如 `*name*`)、Mock 表达式、备注与启用开关,支持搜索、新增、删除与恢复默认。
|
||||||
|
|
||||||
规则**从上到下**匹配,先命中先用;类型需与 JSON 字段实际类型一致(KV 参数一律按 string 匹配)。
|
规则**从上到下**匹配,先命中先用;类型需与 JSON 字段实际类型一致(KV 参数一律按 string 匹配)。
|
||||||
|
|
||||||
@@ -81,6 +81,10 @@ Body 工具栏提供两个辅助按钮:
|
|||||||
|
|
||||||
特点:
|
特点:
|
||||||
|
|
||||||
|
- **独立监听端口**:Mock 服务默认跑在 `0.0.0.0:8798`(可用环境变量 `OPSXAPI_MOCK_ADDR` 修改),与主服务 8787 分离,内网同事按 `http://本机内网IP:8798/mock/{地址}{路径}` 直连;
|
||||||
|
- **Mock 管理页**:活动栏「Mock」视图集中管理已发布路由 —— 方法 / 路径 / 状态码 / 响应格式 / 延迟(0–5s)/ 启用开关,支持保存草稿、一键发布全部、试运行与 GET /demo 示例;
|
||||||
|
- **访问控制**:可开启 Bearer 密钥校验(只存摘要、可随时替换);来源默认仅本机与内网网段,公网访问需显式设置 `OPSXAPI_MOCK_ALLOW_PUBLIC=1`;
|
||||||
|
- **一键建 Mock**:HTTP 编辑器可「用本次响应创建 Mock」,把真实返回直接变成 Mock 模板;
|
||||||
- **每次请求随机生成**:响应模板里的 `@cname`、`@integer(...)` 等表达式由服务端实时求值;
|
- **每次请求随机生成**:响应模板里的 `@cname`、`@integer(...)` 等表达式由服务端实时求值;
|
||||||
- 发布时自动把智能 Mock 规则烘焙进模板(开启智能匹配时);
|
- 发布时自动把智能 Mock 规则烘焙进模板(开启智能匹配时);
|
||||||
- 非 GET 接口可用 `?_method=POST` 快速验证;延迟最高 5 秒,用于模拟慢接口 / loading 态。
|
- 非 GET 接口可用 `?_method=POST` 快速验证;延迟最高 5 秒,用于模拟慢接口 / loading 态。
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
## 场景用例
|
## 场景用例
|
||||||
|
|
||||||
从侧栏底部「自动化测试」进入。用例 = 有序步骤列表,每个步骤:
|
从活动栏「测试」进入。用例 = 有序步骤列表,每个步骤:
|
||||||
|
|
||||||
- **引用一个 HTTP 接口**(从集合中选择,可跨集合、跨目录);
|
- **引用一个 HTTP 接口**(从集合中选择,可跨集合、跨目录);
|
||||||
- **断言**:状态码 / 耗时 / Header / Body 四类目标,支持 等于、不等于、大于、小于、包含、存在 与 **JSONPath** 取值比较;
|
- **断言**:状态码 / 耗时 / Header / Body 四类目标,支持 等于、不等于、大于、小于、包含、存在 与 **JSONPath** 取值比较;
|
||||||
@@ -23,15 +23,17 @@
|
|||||||
|
|
||||||
- 统计卡:通过 / 失败步骤数、总耗时、断言数、通过率;
|
- 统计卡:通过 / 失败步骤数、总耗时、断言数、通过率;
|
||||||
- 步骤明细:方法 + URL + 状态码 + 耗时,逐条断言的期望 / 实际对照(可按 通过 / 失败 过滤);
|
- 步骤明细:方法 + URL + 状态码 + 耗时,逐条断言的期望 / 实际对照(可按 通过 / 失败 过滤);
|
||||||
- 「再次运行」一键回归;「导出报告」生成 Markdown 存档或归档到缺陷单;
|
- 「再次运行」一键回归;「导出报告」生成 Markdown(含断言对照表,适合贴缺陷单)或 JSON(`opsxapi.test-run.v1` 结构,供 CI / 脚本二次处理);
|
||||||
- 每个用例保留最近 50 次运行记录,可下拉切换历史报告。
|
- 每个用例保留最近 50 次运行记录,可下拉切换历史报告。
|
||||||
|
|
||||||
## 定时任务
|
## 定时任务
|
||||||
|
|
||||||
用例头部的 ⏱ 按钮或左侧「定时任务」入口:
|
用例头部的 ⏱ 按钮或左侧「定时任务」入口,两种节奏:
|
||||||
|
|
||||||
- 间隔可选 5 / 15 / 30 / 60 分钟、6 小时、每天;
|
- **固定间隔**:5 / 15 / 30 / 60 分钟 · 6 小时 · 每天;
|
||||||
|
- **Cron 表达式**:标准 5 段(分 时 日 月 周,本地时区),例如每 15 分钟 `*/15 * * * *`、每个工作日 9 点半 `30 9 * * 1-5`;
|
||||||
- 独立 启用 / 暂停 开关,显示下次运行时间与上次结果;
|
- 独立 启用 / 暂停 开关,显示下次运行时间与上次结果;
|
||||||
|
- 调度器每 15 秒巡检一次,同一用例运行中不会重复触发;每个任务环形保留最近 30 条运行日志;
|
||||||
- **应用保持运行时生效**:OpsxAPI 窗口(或 Web 页面)开着才会按时触发并记录报告,关闭后自动暂停 —— 适合工作时段的持续监控,不能替代服务器侧的 CI。
|
- **应用保持运行时生效**:OpsxAPI 窗口(或 Web 页面)开着才会按时触发并记录报告,关闭后自动暂停 —— 适合工作时段的持续监控,不能替代服务器侧的 CI。
|
||||||
|
|
||||||
> 提示:定时触发的请求同样走当前环境与 Mock 设置;跨环境回归前先在顶栏切换环境。
|
> 提示:定时触发的请求同样走当前环境与 Mock 设置;跨环境回归前先在顶栏切换环境。
|
||||||
|
|||||||
@@ -0,0 +1,31 @@
|
|||||||
|
# 授权与激活
|
||||||
|
|
||||||
|
OpsxAPI 桌面版采用「**先试用、后授权**」模式:**30 天全功能试用**从应用首次启动自动开始,无需注册账号、无需信用卡。试用期结束后,个人非商业用途可继续使用;在工作中商用需购买授权([查看定价](/pricing))。
|
||||||
|
|
||||||
|
## 两种授权码
|
||||||
|
|
||||||
|
| 类型 | 前缀 | 激活方式 | 适合 |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| 在线授权 | `LIC-` | 联网激活,绑定设备,支持自助解绑换机 | 有网络的日常环境 |
|
||||||
|
| 离线许可证 | `LICOFF-` | 本地验签激活,同样绑定设备 | 隔离内网 / 完全无网络 |
|
||||||
|
|
||||||
|
## 激活步骤
|
||||||
|
|
||||||
|
1. 复制授权码(购买后邮件发放,形如 `LIC-2026-XXXX-XXXX-XXXX`);
|
||||||
|
2. 打开 **设置 → 授权**,粘贴到「激活许可证」输入框(邮箱可选,用于授权关联);
|
||||||
|
3. 点击「激活」。在线授权会联系授权服务器校验;离线许可证全程不联网,本地 Ed25519 验签即通过。
|
||||||
|
|
||||||
|
激活成功后,活动栏授权徽章变为绿色「已授权」,面板显示计划类型、到期时间与设备数。
|
||||||
|
|
||||||
|
## 状态与规则
|
||||||
|
|
||||||
|
- **设备绑定**:授权绑定设备而非账号。包年 3 台、永久 5 台;在 设置 → 授权 点「解绑本机」可迁移到新机器;
|
||||||
|
- **离线容忍**:在线授权连续 30 天无法联网验证时需重新联网一次;离线许可证本地自验、永不联网也有效;
|
||||||
|
- **防伪验证**:服务器响应带 Ed25519 签名,客户端内置公钥校验,防假服务器与篡改缓存;本机时钟明显回拨时拒绝激活;
|
||||||
|
- **周期校验**:激活后应用每周静默验证一次,授权被吊销会自动降级为未授权状态。
|
||||||
|
|
||||||
|
## 常见问题
|
||||||
|
|
||||||
|
- **换电脑怎么办?** 旧机器 解绑本机 → 新机器粘贴同一授权码激活。
|
||||||
|
- **离线证能用多久?** 最长 365 天,到期后在管理端重签新序列号(可同设备)。
|
||||||
|
- **试用期到了功能会被锁吗?** 不会硬锁。个人非商业继续使用;商用请授权。
|
||||||
@@ -137,6 +137,12 @@
|
|||||||
{
|
{
|
||||||
"name": "参考",
|
"name": "参考",
|
||||||
"pages": [
|
"pages": [
|
||||||
|
{
|
||||||
|
"file": "21-license.md",
|
||||||
|
"slug": "license",
|
||||||
|
"title": "授权与激活",
|
||||||
|
"updated": "2026-10-16"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"file": "18-server-api.md",
|
"file": "18-server-api.md",
|
||||||
"slug": "server-api",
|
"slug": "server-api",
|
||||||
|
|||||||
+3
-1
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
@@ -199,7 +201,7 @@
|
|||||||
<a class="pn prev" href="/docs/ai"><span class="pn-label">← 上一页</span><span class="pn-title">AI 助手</span></a>
|
<a class="pn prev" href="/docs/ai"><span class="pn-label">← 上一页</span><span class="pn-title">AI 助手</span></a>
|
||||||
|
|
||||||
|
|
||||||
<a class="pn next" href="/docs/server-api"><span class="pn-label">下一页 →</span><span class="pn-title">服务端 API 参考</span></a>
|
<a class="pn next" href="/docs/license"><span class="pn-label">下一页 →</span><span class="pn-title">授权与激活</span></a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link active" href="/docs/faq">常见问题</a>
|
<a class="nav-link active" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
+46
-27
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
@@ -138,8 +140,35 @@
|
|||||||
<h1 class="page-title">界面导览</h1>
|
<h1 class="page-title">界面导览</h1>
|
||||||
<div class="page-meta">更新于 2026-09-17</div>
|
<div class="page-meta">更新于 2026-09-17</div>
|
||||||
<article class="md">
|
<article class="md">
|
||||||
<p>OpsxAPI 主界面分为五个区域:</p>
|
<p>OpsxAPI 主界面由「活动栏 + 顶栏 + 侧栏 + 标签页 + 编辑区」组成:</p>
|
||||||
<h2 id="sec-1">顶栏</h2>
|
<h2 id="sec-1">活动栏(最左窄栏)</h2>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>元素</th>
|
||||||
|
<th>作用</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>空间徽标(顶部)</td>
|
||||||
|
<td>切换 本地空间 / 我的空间 / 团队空间;云端空间显示同步状态点</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>接口 / 历史 / 测试 / 文档 / Mock</td>
|
||||||
|
<td>主导航:接口工作台、请求历史、自动化测试、接口文档、Mock 管理</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>授权徽章</td>
|
||||||
|
<td>试用倒计时或已授权状态,点击进入 设置 → 授权</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>设置 / 账号</td>
|
||||||
|
<td>设置中心;账号菜单(团队管理、立即同步、退出登录)</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h2 id="sec-2">顶栏</h2>
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -150,37 +179,26 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>+ 新建</td>
|
<td>+ 新建</td>
|
||||||
<td>快捷创建各协议请求 / 目录(默认建在第一个集合)</td>
|
<td>六种协议请求 / 目录(默认建在第一个集合)</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>导入 / 导出</td>
|
<td>导入 / 导出</td>
|
||||||
<td>打开数据导入、导出对话框</td>
|
<td>数据导入(十种格式)与导出对话框</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>环境选择器</td>
|
<td>环境选择器</td>
|
||||||
<td>切换当前环境(变量随之生效),「⚙ 环境」管理环境与变量</td>
|
<td>切换当前环境(变量与前置 URL 随之生效),可直达环境管理</td>
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>🌙 / ☀️</td>
|
|
||||||
<td>明暗主题切换</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>⋯</td>
|
|
||||||
<td>设置(主题、超时、重置工作区)</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<h2 id="sec-2">左侧集合树</h2>
|
<h2 id="sec-3">左侧栏(接口 | 历史 分段)</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li>点击请求 → 在标签页中打开;点击目录 → 展开 / 折叠。</li>
|
<li><strong>接口</strong>:集合树 — 点击请求在标签页打开,目录展开 / 折叠;<strong>右键</strong> 新建 / 重命名 / 复制 / 导出 / 删除;<strong>拖拽</strong>移动(支持跨集合);顶部搜索实时过滤。</li>
|
||||||
<li><strong>右键</strong>任意节点:新建、重命名、复制、导出、删除。</li>
|
<li><strong>历史</strong>:最近请求自动归档(状态码 / 耗时),点击回跳对应接口,支持一键清空。</li>
|
||||||
<li><strong>拖拽</strong>请求或目录到另一个目录,即可移动(支持跨集合)。</li>
|
|
||||||
<li>顶部搜索框按名称 / 方法 / URL 实时过滤。</li>
|
|
||||||
<li>底部为<strong>历史记录</strong>:显示最近请求的状态码与耗时,点击可回跳到对应接口。</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
<h2 id="sec-3">标签页栏</h2>
|
<h2 id="sec-4">标签页栏</h2>
|
||||||
<p>同时打开多个接口,中键或 × 关闭;右键支持「关闭其他 / 关闭全部」。正在连接中的实时协议标签会显示呼吸圆点。</p>
|
<p>同时打开多个接口,中键或 × 关闭;右键支持「关闭其他 / 关闭全部」。正在连接中的实时协议标签会显示呼吸圆点。</p>
|
||||||
<h2 id="sec-4">请求编辑区(上半部分)</h2>
|
<h2 id="sec-5">请求编辑区(上半部分)</h2>
|
||||||
<p>按协议呈现不同编辑器:</p>
|
<p>按协议呈现不同编辑器:</p>
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
@@ -216,7 +234,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<h2 id="sec-5">响应区(下半部分)</h2>
|
<h2 id="sec-6">响应区(下半部分)</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>HTTP / GraphQL</strong>:响应体(Pretty JSON 高亮)、Raw、响应头,右上角状态 / 耗时 / 大小 / 复制。</li>
|
<li><strong>HTTP / GraphQL</strong>:响应体(Pretty JSON 高亮)、Raw、响应头,右上角状态 / 耗时 / 大小 / 复制。</li>
|
||||||
<li><strong>实时协议</strong>:分色消息日志(接收 · 绿、发送 · 蓝、系统 · 灰、错误 · 红),顶部实时统计收发条数与连接时长。</li>
|
<li><strong>实时协议</strong>:分色消息日志(接收 · 绿、发送 · 蓝、系统 · 灰、错误 · 红),顶部实时统计收发条数与连接时长。</li>
|
||||||
@@ -244,11 +262,12 @@
|
|||||||
<aside class="toc">
|
<aside class="toc">
|
||||||
<div class="toc-title">本页目录</div>
|
<div class="toc-title">本页目录</div>
|
||||||
<nav class="toc-nav">
|
<nav class="toc-nav">
|
||||||
<a class="toc-l2" href="#sec-1">顶栏</a>
|
<a class="toc-l2" href="#sec-1">活动栏(最左窄栏)</a>
|
||||||
<a class="toc-l2" href="#sec-2">左侧集合树</a>
|
<a class="toc-l2" href="#sec-2">顶栏</a>
|
||||||
<a class="toc-l2" href="#sec-3">标签页栏</a>
|
<a class="toc-l2" href="#sec-3">左侧栏(接口 | 历史 分段)</a>
|
||||||
<a class="toc-l2" href="#sec-4">请求编辑区(上半部分)</a>
|
<a class="toc-l2" href="#sec-4">标签页栏</a>
|
||||||
<a class="toc-l2" href="#sec-5">响应区(下半部分)</a>
|
<a class="toc-l2" href="#sec-5">请求编辑区(上半部分)</a>
|
||||||
|
<a class="toc-l2" href="#sec-6">响应区(下半部分)</a>
|
||||||
|
|
||||||
</nav>
|
</nav>
|
||||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+8
-2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
@@ -145,11 +147,11 @@
|
|||||||
<li><strong>智能匹配</strong> —— 开启后按<strong>字段名</strong>自动套用规则表(<code>username</code> → 姓名、<code>email</code> → 邮箱…),一行不用写。</li>
|
<li><strong>智能匹配</strong> —— 开启后按<strong>字段名</strong>自动套用规则表(<code>username</code> → 姓名、<code>email</code> → 邮箱…),一行不用写。</li>
|
||||||
</ol>
|
</ol>
|
||||||
<h2 id="sec-1">开启与配置</h2>
|
<h2 id="sec-1">开启与配置</h2>
|
||||||
<p>顶栏 <strong>⋯ → Mock 数据</strong>(或「设置 → Mock 数据」):</p>
|
<p>「设置 → 数据生成」(或请求编辑器的 Mock 工具按钮):</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>启用 Mock 数据</strong>:总开关,关闭后 <code>@</code> 表达式按普通文本原样发送;</li>
|
<li><strong>启用 Mock 数据</strong>:总开关,关闭后 <code>@</code> 表达式按普通文本原样发送;</li>
|
||||||
<li><strong>智能 Mock 匹配</strong>:JSON Body 字段值未写表达式时,按字段名匹配规则自动生成;</li>
|
<li><strong>智能 Mock 匹配</strong>:JSON Body 字段值未写表达式时,按字段名匹配规则自动生成;</li>
|
||||||
<li><strong>智能匹配规则表</strong>:数据类型(string / number / integer / boolean)、匹配方式(通配符 / 完全匹配 / 正则)、匹配规则(如 <code>*name*</code>)、Mock 表达式、备注与启用开关,支持搜索、新增、删除与恢复默认。</li>
|
<li><strong>智能匹配规则表</strong>:内置 <strong>61 条</strong>默认规则(用户名、邮箱、手机号、价格、时间戳……),数据类型(string / number / integer / boolean)、匹配方式(通配符 / 完全匹配 / 正则)、匹配规则(如 <code>*name*</code>)、Mock 表达式、备注与启用开关,支持搜索、新增、删除与恢复默认。</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>规则<strong>从上到下</strong>匹配,先命中先用;类型需与 JSON 字段实际类型一致(KV 参数一律按 string 匹配)。</p>
|
<p>规则<strong>从上到下</strong>匹配,先命中先用;类型需与 JSON 字段实际类型一致(KV 参数一律按 string 匹配)。</p>
|
||||||
<h2 id="sec-2">表达式速查</h2>
|
<h2 id="sec-2">表达式速查</h2>
|
||||||
@@ -285,6 +287,10 @@ page = @integer(1, 10)
|
|||||||
</ol>
|
</ol>
|
||||||
<p>特点:</p>
|
<p>特点:</p>
|
||||||
<ul>
|
<ul>
|
||||||
|
<li><strong>独立监听端口</strong>:Mock 服务默认跑在 <code>0.0.0.0:8798</code>(可用环境变量 <code>OPSXAPI_MOCK_ADDR</code> 修改),与主服务 8787 分离,内网同事按 <code>http://本机内网IP:8798/mock/{地址}{路径}</code> 直连;</li>
|
||||||
|
<li><strong>Mock 管理页</strong>:活动栏「Mock」视图集中管理已发布路由 —— 方法 / 路径 / 状态码 / 响应格式 / 延迟(0–5s)/ 启用开关,支持保存草稿、一键发布全部、试运行与 GET /demo 示例;</li>
|
||||||
|
<li><strong>访问控制</strong>:可开启 Bearer 密钥校验(只存摘要、可随时替换);来源默认仅本机与内网网段,公网访问需显式设置 <code>OPSXAPI_MOCK_ALLOW_PUBLIC=1</code>;</li>
|
||||||
|
<li><strong>一键建 Mock</strong>:HTTP 编辑器可「用本次响应创建 Mock」,把真实返回直接变成 Mock 模板;</li>
|
||||||
<li><strong>每次请求随机生成</strong>:响应模板里的 <code>@cname</code>、<code>@integer(...)</code> 等表达式由服务端实时求值;</li>
|
<li><strong>每次请求随机生成</strong>:响应模板里的 <code>@cname</code>、<code>@integer(...)</code> 等表达式由服务端实时求值;</li>
|
||||||
<li>发布时自动把智能 Mock 规则烘焙进模板(开启智能匹配时);</li>
|
<li>发布时自动把智能 Mock 规则烘焙进模板(开启智能匹配时);</li>
|
||||||
<li>非 GET 接口可用 <code>?_method=POST</code> 快速验证;延迟最高 5 秒,用于模拟慢接口 / loading 态。</li>
|
<li>非 GET 接口可用 <code>?_method=POST</code> 快速验证;延迟最高 5 秒,用于模拟慢接口 / loading 态。</li>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+1
-1
@@ -1 +1 @@
|
|||||||
[{"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":"环境要求 组件 版本 用途 Node.js ≥ 20 Web 前端(Vite) Go ≥ 1.23 本地代理服务(Gin) Rust + Cargo 可选 仅编译桌面端(Tauri)时需要 启动 看到下面的输出即可打开浏览器: 命令 说明 浏览器版(推荐) 桌面窗口(Tauri,共用同一 UI) Web + 桌面一起开 / 查看状态 / 停止 30 秒发出第一个请求 1. 打开 \u003chttp://127.0.0.1:5173 ,左侧是内置的「示例集合」。 2. 点击 HTTP · httpbin → 获取请求回显 。 3. 点击右上角 发送 。 4. 下方响应区显示 、耗时与 JSON 高亮响应体 —— 完成! 桌面端(可选) 桌面端复用同一份界面与数据通道,HTTP 请求走 Tauri 原生网络栈,不依赖浏览器 CORS。 提示 :首次打开会自动创建两个环境(正式 / 本地)和一个覆盖全部协议的示例集合,可随时在「设置」中重置。"},{"Slug":"interface","Title":"界面导览","Group":"开始使用","Text":"OpsxAPI 主界面分为五个区域: 顶栏 元素 作用 + 新建 快捷创建各协议请求 / 目录(默认建在第一个集合) 导入 / 导出 打开数据导入、导出对话框 环境选择器 切换当前环境(变量随之生效),「⚙ 环境」管理环境与变量 🌙 / ☀️ 明暗主题切换 ⋯ 设置(主题、超时、重置工作区) 左侧集合树 点击请求 → 在标签页中打开;点击目录 → 展开 / 折叠。 右键 任意节点:新建、重命名、复制、导出、删除。 拖拽 请求或目录到另一个目录,即可移动(支持跨集合)。 顶部搜索框按名称 / 方法 / 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. 点击 发送 ,Line truncated
|
[{"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":"环境要求 组件 版本 用途 Node.js ≥ 20 Web 前端(Vite) Go ≥ 1.23 本地代理服务(Gin) Rust + Cargo 可选 仅编译桌面端(Tauri)时需要 启动 看到下面的输出即可打开浏览器: 命令 说明 浏览器版(推荐) 桌面窗口(Tauri,共用同一 UI) Web + 桌面一起开 / 查看状态 / 停止 30 秒发出第一个请求 1. 打开 \u003chttp://127.0.0.1:5173 ,左侧是内置的「示例集合」。 2. 点击 HTTP · httpbin → 获取请求回显 。 3. 点击右上角 发送 。 4. 下方响应区显示 、耗时与 JSON 高亮响应体 —— 完成! 桌面端(可选) 桌面端复用同一份界面与数据通道,HTTP 请求走 Tauri 原生网络栈,不依赖浏览器 CORS。 提示 :首次打开会自动创建两个环境(正式 / 本地)和一个覆盖全部协议的示例集合,可随时在「设置」中重置。"},{"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、响应头,右上角状态 / 耗时 / 大小 / 复制。 实时协议 :分色消息日志(接Line truncated
|
||||||
+3
-1
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link active" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link active" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
@@ -238,7 +240,7 @@ curl -s -X POST http://127.0.0.1:8787/v1/proxy/ws/close \
|
|||||||
|
|
||||||
<div class="pn-nav">
|
<div class="pn-nav">
|
||||||
|
|
||||||
<a class="pn prev" href="/docs/account"><span class="pn-label">← 上一页</span><span class="pn-title">账号与团队</span></a>
|
<a class="pn prev" href="/docs/license"><span class="pn-label">← 上一页</span><span class="pn-title">授权与激活</span></a>
|
||||||
|
|
||||||
|
|
||||||
<a class="pn next" href="/docs/faq"><span class="pn-label">下一页 →</span><span class="pn-title">常见问题</span></a>
|
<a class="pn next" href="/docs/faq"><span class="pn-label">下一页 →</span><span class="pn-title">常见问题</span></a>
|
||||||
|
|||||||
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
+8
-4
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
@@ -167,7 +169,7 @@
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<h2 id="sec-1">场景用例</h2>
|
<h2 id="sec-1">场景用例</h2>
|
||||||
<p>从侧栏底部「自动化测试」进入。用例 = 有序步骤列表,每个步骤:</p>
|
<p>从活动栏「测试」进入。用例 = 有序步骤列表,每个步骤:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>引用一个 HTTP 接口</strong>(从集合中选择,可跨集合、跨目录);</li>
|
<li><strong>引用一个 HTTP 接口</strong>(从集合中选择,可跨集合、跨目录);</li>
|
||||||
<li><strong>断言</strong>:状态码 / 耗时 / Header / Body 四类目标,支持 等于、不等于、大于、小于、包含、存在 与 <strong>JSONPath</strong> 取值比较;</li>
|
<li><strong>断言</strong>:状态码 / 耗时 / Header / Body 四类目标,支持 等于、不等于、大于、小于、包含、存在 与 <strong>JSONPath</strong> 取值比较;</li>
|
||||||
@@ -179,14 +181,16 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li>统计卡:通过 / 失败步骤数、总耗时、断言数、通过率;</li>
|
<li>统计卡:通过 / 失败步骤数、总耗时、断言数、通过率;</li>
|
||||||
<li>步骤明细:方法 + URL + 状态码 + 耗时,逐条断言的期望 / 实际对照(可按 通过 / 失败 过滤);</li>
|
<li>步骤明细:方法 + URL + 状态码 + 耗时,逐条断言的期望 / 实际对照(可按 通过 / 失败 过滤);</li>
|
||||||
<li>「再次运行」一键回归;「导出报告」生成 Markdown 存档或归档到缺陷单;</li>
|
<li>「再次运行」一键回归;「导出报告」生成 Markdown(含断言对照表,适合贴缺陷单)或 JSON(<code>opsxapi.test-run.v1</code> 结构,供 CI / 脚本二次处理);</li>
|
||||||
<li>每个用例保留最近 50 次运行记录,可下拉切换历史报告。</li>
|
<li>每个用例保留最近 50 次运行记录,可下拉切换历史报告。</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h2 id="sec-3">定时任务</h2>
|
<h2 id="sec-3">定时任务</h2>
|
||||||
<p>用例头部的 ⏱ 按钮或左侧「定时任务」入口:</p>
|
<p>用例头部的 ⏱ 按钮或左侧「定时任务」入口,两种节奏:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>间隔可选 5 / 15 / 30 / 60 分钟、6 小时、每天;</li>
|
<li><strong>固定间隔</strong>:5 / 15 / 30 / 60 分钟 · 6 小时 · 每天;</li>
|
||||||
|
<li><strong>Cron 表达式</strong>:标准 5 段(分 时 日 月 周,本地时区),例如每 15 分钟 <code>*/15 * * * *</code>、每个工作日 9 点半 <code>30 9 * * 1-5</code>;</li>
|
||||||
<li>独立 启用 / 暂停 开关,显示下次运行时间与上次结果;</li>
|
<li>独立 启用 / 暂停 开关,显示下次运行时间与上次结果;</li>
|
||||||
|
<li>调度器每 15 秒巡检一次,同一用例运行中不会重复触发;每个任务环形保留最近 30 条运行日志;</li>
|
||||||
<li><strong>应用保持运行时生效</strong>:OpsxAPI 窗口(或 Web 页面)开着才会按时触发并记录报告,关闭后自动暂停 —— 适合工作时段的持续监控,不能替代服务器侧的 CI。</li>
|
<li><strong>应用保持运行时生效</strong>:OpsxAPI 窗口(或 Web 页面)开着才会按时触发并记录报告,关闭后自动暂停 —— 适合工作时段的持续监控,不能替代服务器侧的 CI。</li>
|
||||||
</ul>
|
</ul>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
|
|||||||
+2
@@ -124,6 +124,8 @@
|
|||||||
<div class="nav-group">
|
<div class="nav-group">
|
||||||
<div class="nav-group-title">参考</div>
|
<div class="nav-group-title">参考</div>
|
||||||
|
|
||||||
|
<a class="nav-link" href="/docs/license">授权与激活</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
<a class="nav-link" href="/docs/server-api">服务端 API 参考</a>
|
||||||
|
|
||||||
<a class="nav-link" href="/docs/faq">常见问题</a>
|
<a class="nav-link" href="/docs/faq">常见问题</a>
|
||||||
|
|||||||
Vendored
+42
-7
@@ -31,6 +31,10 @@
|
|||||||
<symbol id="i-download" viewBox="0 0 24 24"><path d="M12 15V3" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /> <path d="m7 10 5 5 5-5" /></symbol>
|
<symbol id="i-download" viewBox="0 0 24 24"><path d="M12 15V3" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /> <path d="m7 10 5 5 5-5" /></symbol>
|
||||||
<symbol id="i-upload" viewBox="0 0 24 24"><path d="M12 3v12" /> <path d="m17 8-5-5-5 5" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /></symbol>
|
<symbol id="i-upload" viewBox="0 0 24 24"><path d="M12 3v12" /> <path d="m17 8-5-5-5 5" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /></symbol>
|
||||||
<symbol id="i-library" viewBox="0 0 24 24"><path d="m16 6 4 14" /> <path d="M12 6v14" /> <path d="M8 8v12" /> <path d="M4 4v16" /></symbol>
|
<symbol id="i-library" viewBox="0 0 24 24"><path d="m16 6 4 14" /> <path d="M12 6v14" /> <path d="M8 8v12" /> <path d="M4 4v16" /></symbol>
|
||||||
|
<symbol id="i-bot" viewBox="0 0 24 24"><path d="M12 8V4H8" /><rect width="16" height="12" x="4" y="8" rx="2" /><path d="M2 14h2" /><path d="M20 14h2" /><path d="M15 13v2" /><path d="M9 13v2" /></symbol>
|
||||||
|
<symbol id="i-list-checks" viewBox="0 0 24 24"><path d="m3 17 2 2 4-4" /><path d="m3 7 2 2 4-4" /><path d="M13 6h8" /><path d="M13 12h8" /><path d="M13 18h8" /></symbol>
|
||||||
|
<symbol id="i-flask" viewBox="0 0 24 24"><path d="M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2" /><path d="M6.453 15h11.094" /><path d="M8.5 2h7" /></symbol>
|
||||||
|
<symbol id="i-clock" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" /><path d="M12 6v6l4 2" /></symbol>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
||||||
<!-- ===================== 导航 ===================== -->
|
<!-- ===================== 导航 ===================== -->
|
||||||
@@ -62,14 +66,14 @@
|
|||||||
<h1>一个工作台,<br>调完<em>六种协议</em>的接口</h1>
|
<h1>一个工作台,<br>调完<em>六种协议</em>的接口</h1>
|
||||||
<p class="hero-sub">
|
<p class="hero-sub">
|
||||||
HTTP · GraphQL · WebSocket · SSE · Socket.IO · MQTT。<br>
|
HTTP · GraphQL · WebSocket · SSE · Socket.IO · MQTT。<br>
|
||||||
集合管理、多环境变量、全格式导入导出、代码生成、内置文档站 —— 运维与开发的自托管接口利器。
|
智能 Mock、自动化测试(Cron 定时)、AI 生成场景用例、全格式导入导出与代码生成 —— 运维与开发的自托管接口利器。
|
||||||
</p>
|
</p>
|
||||||
<div class="hero-actions">
|
<div class="hero-actions">
|
||||||
<a class="btn btn-primary btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">立即开始(免费体验)</a>
|
<a class="btn btn-primary btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">立即开始(免费体验)</a>
|
||||||
<a class="btn btn-ghost btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">快速开始 →</a>
|
<a class="btn btn-ghost btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">快速开始 →</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="hero-pills">
|
<div class="hero-pills">
|
||||||
<span>本地优先</span><span>自定义 WS 握手头</span><span>SSE 断点续传</span><span>本机 Mock 服务</span>
|
<span>本地优先</span><span>自定义 WS 握手头</span><span>SSE 断点续传</span><span>智能 Mock</span><span>AI 生成用例</span><span>Cron 定时测试</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -141,7 +145,27 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-icon"><svg class="i-lg"><use href="#i-package"/></svg></div>
|
<div class="card-icon"><svg class="i-lg"><use href="#i-package"/></svg></div>
|
||||||
<h3>生态互通</h3>
|
<h3>生态互通</h3>
|
||||||
<p>Apifox / Postman / Swagger / cURL / HAR 一键导入导出,迁移零成本,文档即代码。</p>
|
<p>OpenAPI / Swagger / Apifox / Postman / Apipost / cURL / HAR / Insomnia / Hoppscotch / Markdown 十路导入,迁移零成本。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-list-checks"/></svg></div>
|
||||||
|
<h3>自动化测试闭环</h3>
|
||||||
|
<p>10 种断言(含 JSONPath)+ 跨步骤变量提取 + Markdown / JSON 报告,还支持 5 段 Cron 定时回归。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-bot"/></svg></div>
|
||||||
|
<h3>AI 生成场景用例</h3>
|
||||||
|
<p>DeepSeek / 智谱 / Kimi / OpenAI / Ollama 自带即可:一句话把整个集合编排成可执行的多步骤回归用例。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-flask"/></svg></div>
|
||||||
|
<h3>智能 Mock 双引擎</h3>
|
||||||
|
<p>61 条字段名智能规则 + @表达式逐请求生成;发布到本机服务带令牌地址、Bearer 验证与限流。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-book-open"/></svg></div>
|
||||||
|
<h3>内网文档分享</h3>
|
||||||
|
<p>从集合一键发布只读快照到随机令牌链接,自动剔除鉴权与机密字段,可随时撤销。</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -159,6 +183,12 @@
|
|||||||
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-zap"/></svg></div><div><h3>实时协议调试</h3><p>WS 握手头、SSE 断点续传、Socket.IO 事件收发、MQTT 通配符订阅。</p></div></div>
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-zap"/></svg></div><div><h3>实时协议调试</h3><p>WS 握手头、SSE 断点续传、Socket.IO 事件收发、MQTT 通配符订阅。</p></div></div>
|
||||||
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-code"/></svg></div><div><h3>代码生成</h3><p>任意请求一键生成 cURL / fetch / Python / Go,直接进脚本与 CI。</p></div></div>
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-code"/></svg></div><div><h3>代码生成</h3><p>任意请求一键生成 cURL / fetch / Python / Go,直接进脚本与 CI。</p></div></div>
|
||||||
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-book-open"/></svg></div><div><h3>内置文档站</h3><p>随服务自带 /docs 用户文档与 Markdown 接口文档导出,交付即完整。</p></div></div>
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-book-open"/></svg></div><div><h3>内置文档站</h3><p>随服务自带 /docs 用户文档与 Markdown 接口文档导出,交付即完整。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-list-checks"/></svg></div><div><h3>自动化测试</h3><p>多步骤编排、10 种断言、JSONPath、变量提取传参、Cron 定时与运行日志。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-bot"/></svg></div><div><h3>AI 场景用例</h3><p>集合接口清单喂给大模型,自动编排业务依赖、补默认断言与变量提取。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-flask"/></svg></div><div><h3>智能 Mock</h3><p>字段名智能匹配 + @cname/@integer 等表达式;一键用响应创建 Mock,延迟可模拟。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-clock"/></svg></div><div><h3>历史与重放</h3><p>最近请求自动归档(状态码 / 耗时),点一下即按原参数重放。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-shield-check"/></svg></div><div><h3>系统代理</h3><p>桌面端自动读环境变量代理,支持自定义代理、绕过列表与代理认证。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-globe"/></svg></div><div><h3>文档快照分享</h3><p>只读链接发同事,鉴权机密自动过滤;Mock 地址与文档同页展示。</p></div></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@@ -213,7 +243,10 @@
|
|||||||
<tr><td>WS 自定义握手 Header(Web)</td><td class="hl"><b>✓ 内置隧道</b></td><td>桌面端支持</td><td>桌面端支持</td></tr>
|
<tr><td>WS 自定义握手 Header(Web)</td><td class="hl"><b>✓ 内置隧道</b></td><td>桌面端支持</td><td>桌面端支持</td></tr>
|
||||||
<tr><td>自托管部署</td><td class="hl"><b>单二进制 + 静态页</b></td><td>私有化付费</td><td>私有化付费</td></tr>
|
<tr><td>自托管部署</td><td class="hl"><b>单二进制 + 静态页</b></td><td>私有化付费</td><td>私有化付费</td></tr>
|
||||||
<tr><td>私有化 / 买断参考价</td><td class="hl"><b>¥8,000/年起 · ¥30,000 买断</b></td><td>询价</td><td>询价</td></tr>
|
<tr><td>私有化 / 买断参考价</td><td class="hl"><b>¥8,000/年起 · ¥30,000 买断</b></td><td>询价</td><td>询价</td></tr>
|
||||||
<tr><td>内置用户文档站</td><td class="hl"><b>✓ /docs</b></td><td>—</td><td>—</td></tr>
|
<tr><td>自动化测试断言</td><td class="hl"><b>10 种 + JSONPath</b></td><td>✓</td><td>✓</td></tr>
|
||||||
|
<tr><td>AI 生成测试用例</td><td class="hl"><b>✓ 自带 Key 多厂商</b></td><td>付费 AI 额度</td><td>付费 AI 额度</td></tr>
|
||||||
|
<tr><td>用例定时调度</td><td class="hl"><b>✓ 5 段 Cron</b></td><td>固定间隔</td><td>固定间隔</td></tr>
|
||||||
|
<tr><td>内置用户文档站</td><td class="hl"><b>✓ /docs</b></td><td>—</td><td>—</td></tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@@ -229,11 +262,13 @@
|
|||||||
<div class="pricing three">
|
<div class="pricing three">
|
||||||
<div class="price-card">
|
<div class="price-card">
|
||||||
<div class="plan">专业版</div>
|
<div class="plan">专业版</div>
|
||||||
<div class="price"><b>¥99</b><span>/ 年</span></div>
|
<div class="price"><b>¥99</b><span>/ 年</span> · 永久 <b>¥199</b></div>
|
||||||
<div class="plan-sub">单设备授权 · 全功能</div>
|
<div class="plan-sub">包年 3 台 / 永久 5 台设备 · 全功能</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>✓ 六种协议全部调试能力</li>
|
<li>✓ 六种协议全部调试能力</li>
|
||||||
<li>✓ 集合 / 环境 / 历史无限量</li>
|
<li>✓ 集合 / 环境 / 历史无限量</li>
|
||||||
|
<li>✓ AI 生成用例 + Cron 定时测试</li>
|
||||||
|
<li>✓ Mock 发布 / 文档快照分享</li>
|
||||||
<li>✓ 全格式导入导出 + 代码生成</li>
|
<li>✓ 全格式导入导出 + 代码生成</li>
|
||||||
<li>✓ 桌面端单机全功能</li>
|
<li>✓ 桌面端单机全功能</li>
|
||||||
<li>✓ 1 年免费升级</li>
|
<li>✓ 1 年免费升级</li>
|
||||||
@@ -246,7 +281,7 @@
|
|||||||
<div class="price"><b>¥99</b><span>/ 人 / 年</span></div>
|
<div class="price"><b>¥99</b><span>/ 人 / 年</span></div>
|
||||||
<div class="plan-sub">按席位授权 · 5 席起</div>
|
<div class="plan-sub">按席位授权 · 5 席起</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>✓ 个人版全部能力</li>
|
<li>✓ 专业版全部能力</li>
|
||||||
<li>✓ 集合批量导入分发</li>
|
<li>✓ 集合批量导入分发</li>
|
||||||
<li>✓ 内网自托管(单二进制)</li>
|
<li>✓ 内网自托管(单二进制)</li>
|
||||||
<li>✓ 优先技术支持</li>
|
<li>✓ 优先技术支持</li>
|
||||||
|
|||||||
Vendored
+5
-4
@@ -100,10 +100,11 @@
|
|||||||
<div class="price price-num"><b data-price="year">¥99</b><b data-price="life" style="display:none">¥199</b><span>/ 年</span></div>
|
<div class="price price-num"><b data-price="year">¥99</b><b data-price="life" style="display:none">¥199</b><span>/ 年</span></div>
|
||||||
<div class="plan-sub">单人不分设备多少 · 最多 3 台设备同时激活</div>
|
<div class="plan-sub">单人不分设备多少 · 最多 3 台设备同时激活</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>六种协议全部调试能力</li>
|
<li>六种协议全部调试能力(WS 握手头 / SSE 续传)</li>
|
||||||
<li>集合 / 环境 / 历史无限量</li>
|
<li>自动化测试:10 种断言 + Cron 定时 + 报告导出</li>
|
||||||
<li>全格式导入导出 + 代码生成</li>
|
<li>AI 生成场景用例(DeepSeek / 智谱 / Kimi / Ollama)</li>
|
||||||
<li>本机 Mock 服务</li>
|
<li>智能 Mock 发布 + 内网文档快照分享</li>
|
||||||
|
<li>九种格式导入 + 四语言代码生成</li>
|
||||||
<li>设备可自助解绑迁移</li>
|
<li>设备可自助解绑迁移</li>
|
||||||
<li>1 年免费升级<span data-price="life" style="display:none">(永久版含后续更新)</span></li>
|
<li>1 年免费升级<span data-price="life" style="display:none">(永久版含后续更新)</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
Vendored
+5
-4
@@ -100,10 +100,11 @@
|
|||||||
<div class="price price-num"><b data-price="year">¥99</b><b data-price="life" style="display:none">¥199</b><span>/ 年</span></div>
|
<div class="price price-num"><b data-price="year">¥99</b><b data-price="life" style="display:none">¥199</b><span>/ 年</span></div>
|
||||||
<div class="plan-sub">单人不分设备多少 · 最多 3 台设备同时激活</div>
|
<div class="plan-sub">单人不分设备多少 · 最多 3 台设备同时激活</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>六种协议全部调试能力</li>
|
<li>六种协议全部调试能力(WS 握手头 / SSE 续传)</li>
|
||||||
<li>集合 / 环境 / 历史无限量</li>
|
<li>自动化测试:10 种断言 + Cron 定时 + 报告导出</li>
|
||||||
<li>全格式导入导出 + 代码生成</li>
|
<li>AI 生成场景用例(DeepSeek / 智谱 / Kimi / Ollama)</li>
|
||||||
<li>本机 Mock 服务</li>
|
<li>智能 Mock 发布 + 内网文档快照分享</li>
|
||||||
|
<li>九种格式导入 + 四语言代码生成</li>
|
||||||
<li>设备可自助解绑迁移</li>
|
<li>设备可自助解绑迁移</li>
|
||||||
<li>1 年免费升级<span data-price="life" style="display:none">(永久版含后续更新)</span></li>
|
<li>1 年免费升级<span data-price="life" style="display:none">(永久版含后续更新)</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
+42
-7
@@ -31,6 +31,10 @@
|
|||||||
<symbol id="i-download" viewBox="0 0 24 24"><path d="M12 15V3" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /> <path d="m7 10 5 5 5-5" /></symbol>
|
<symbol id="i-download" viewBox="0 0 24 24"><path d="M12 15V3" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /> <path d="m7 10 5 5 5-5" /></symbol>
|
||||||
<symbol id="i-upload" viewBox="0 0 24 24"><path d="M12 3v12" /> <path d="m17 8-5-5-5 5" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /></symbol>
|
<symbol id="i-upload" viewBox="0 0 24 24"><path d="M12 3v12" /> <path d="m17 8-5-5-5 5" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /></symbol>
|
||||||
<symbol id="i-library" viewBox="0 0 24 24"><path d="m16 6 4 14" /> <path d="M12 6v14" /> <path d="M8 8v12" /> <path d="M4 4v16" /></symbol>
|
<symbol id="i-library" viewBox="0 0 24 24"><path d="m16 6 4 14" /> <path d="M12 6v14" /> <path d="M8 8v12" /> <path d="M4 4v16" /></symbol>
|
||||||
|
<symbol id="i-bot" viewBox="0 0 24 24"><path d="M12 8V4H8" /><rect width="16" height="12" x="4" y="8" rx="2" /><path d="M2 14h2" /><path d="M20 14h2" /><path d="M15 13v2" /><path d="M9 13v2" /></symbol>
|
||||||
|
<symbol id="i-list-checks" viewBox="0 0 24 24"><path d="m3 17 2 2 4-4" /><path d="m3 7 2 2 4-4" /><path d="M13 6h8" /><path d="M13 12h8" /><path d="M13 18h8" /></symbol>
|
||||||
|
<symbol id="i-flask" viewBox="0 0 24 24"><path d="M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2" /><path d="M6.453 15h11.094" /><path d="M8.5 2h7" /></symbol>
|
||||||
|
<symbol id="i-clock" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" /><path d="M12 6v6l4 2" /></symbol>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
||||||
<!-- ===================== 导航 ===================== -->
|
<!-- ===================== 导航 ===================== -->
|
||||||
@@ -62,14 +66,14 @@
|
|||||||
<h1>一个工作台,<br>调完<em>六种协议</em>的接口</h1>
|
<h1>一个工作台,<br>调完<em>六种协议</em>的接口</h1>
|
||||||
<p class="hero-sub">
|
<p class="hero-sub">
|
||||||
HTTP · GraphQL · WebSocket · SSE · Socket.IO · MQTT。<br>
|
HTTP · GraphQL · WebSocket · SSE · Socket.IO · MQTT。<br>
|
||||||
集合管理、多环境变量、全格式导入导出、代码生成、内置文档站 —— 运维与开发的自托管接口利器。
|
智能 Mock、自动化测试(Cron 定时)、AI 生成场景用例、全格式导入导出与代码生成 —— 运维与开发的自托管接口利器。
|
||||||
</p>
|
</p>
|
||||||
<div class="hero-actions">
|
<div class="hero-actions">
|
||||||
<a class="btn btn-primary btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">立即开始(免费体验)</a>
|
<a class="btn btn-primary btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">立即开始(免费体验)</a>
|
||||||
<a class="btn btn-ghost btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">快速开始 →</a>
|
<a class="btn btn-ghost btn-lg" href="/docs/quickstart" target="_blank" rel="noopener">快速开始 →</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="hero-pills">
|
<div class="hero-pills">
|
||||||
<span>本地优先</span><span>自定义 WS 握手头</span><span>SSE 断点续传</span><span>本机 Mock 服务</span>
|
<span>本地优先</span><span>自定义 WS 握手头</span><span>SSE 断点续传</span><span>智能 Mock</span><span>AI 生成用例</span><span>Cron 定时测试</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -141,7 +145,27 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-icon"><svg class="i-lg"><use href="#i-package"/></svg></div>
|
<div class="card-icon"><svg class="i-lg"><use href="#i-package"/></svg></div>
|
||||||
<h3>生态互通</h3>
|
<h3>生态互通</h3>
|
||||||
<p>Apifox / Postman / Swagger / cURL / HAR 一键导入导出,迁移零成本,文档即代码。</p>
|
<p>OpenAPI / Swagger / Apifox / Postman / Apipost / cURL / HAR / Insomnia / Hoppscotch / Markdown 十路导入,迁移零成本。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-list-checks"/></svg></div>
|
||||||
|
<h3>自动化测试闭环</h3>
|
||||||
|
<p>10 种断言(含 JSONPath)+ 跨步骤变量提取 + Markdown / JSON 报告,还支持 5 段 Cron 定时回归。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-bot"/></svg></div>
|
||||||
|
<h3>AI 生成场景用例</h3>
|
||||||
|
<p>DeepSeek / 智谱 / Kimi / OpenAI / Ollama 自带即可:一句话把整个集合编排成可执行的多步骤回归用例。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-flask"/></svg></div>
|
||||||
|
<h3>智能 Mock 双引擎</h3>
|
||||||
|
<p>61 条字段名智能规则 + @表达式逐请求生成;发布到本机服务带令牌地址、Bearer 验证与限流。</p>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-icon"><svg class="i-lg"><use href="#i-book-open"/></svg></div>
|
||||||
|
<h3>内网文档分享</h3>
|
||||||
|
<p>从集合一键发布只读快照到随机令牌链接,自动剔除鉴权与机密字段,可随时撤销。</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -159,6 +183,12 @@
|
|||||||
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-zap"/></svg></div><div><h3>实时协议调试</h3><p>WS 握手头、SSE 断点续传、Socket.IO 事件收发、MQTT 通配符订阅。</p></div></div>
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-zap"/></svg></div><div><h3>实时协议调试</h3><p>WS 握手头、SSE 断点续传、Socket.IO 事件收发、MQTT 通配符订阅。</p></div></div>
|
||||||
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-code"/></svg></div><div><h3>代码生成</h3><p>任意请求一键生成 cURL / fetch / Python / Go,直接进脚本与 CI。</p></div></div>
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-code"/></svg></div><div><h3>代码生成</h3><p>任意请求一键生成 cURL / fetch / Python / Go,直接进脚本与 CI。</p></div></div>
|
||||||
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-book-open"/></svg></div><div><h3>内置文档站</h3><p>随服务自带 /docs 用户文档与 Markdown 接口文档导出,交付即完整。</p></div></div>
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-book-open"/></svg></div><div><h3>内置文档站</h3><p>随服务自带 /docs 用户文档与 Markdown 接口文档导出,交付即完整。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-list-checks"/></svg></div><div><h3>自动化测试</h3><p>多步骤编排、10 种断言、JSONPath、变量提取传参、Cron 定时与运行日志。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-bot"/></svg></div><div><h3>AI 场景用例</h3><p>集合接口清单喂给大模型,自动编排业务依赖、补默认断言与变量提取。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-flask"/></svg></div><div><h3>智能 Mock</h3><p>字段名智能匹配 + @cname/@integer 等表达式;一键用响应创建 Mock,延迟可模拟。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-clock"/></svg></div><div><h3>历史与重放</h3><p>最近请求自动归档(状态码 / 耗时),点一下即按原参数重放。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-shield-check"/></svg></div><div><h3>系统代理</h3><p>桌面端自动读环境变量代理,支持自定义代理、绕过列表与代理认证。</p></div></div>
|
||||||
|
<div class="card row"><div class="card-icon"><svg class="i-lg"><use href="#i-globe"/></svg></div><div><h3>文档快照分享</h3><p>只读链接发同事,鉴权机密自动过滤;Mock 地址与文档同页展示。</p></div></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@@ -213,7 +243,10 @@
|
|||||||
<tr><td>WS 自定义握手 Header(Web)</td><td class="hl"><b>✓ 内置隧道</b></td><td>桌面端支持</td><td>桌面端支持</td></tr>
|
<tr><td>WS 自定义握手 Header(Web)</td><td class="hl"><b>✓ 内置隧道</b></td><td>桌面端支持</td><td>桌面端支持</td></tr>
|
||||||
<tr><td>自托管部署</td><td class="hl"><b>单二进制 + 静态页</b></td><td>私有化付费</td><td>私有化付费</td></tr>
|
<tr><td>自托管部署</td><td class="hl"><b>单二进制 + 静态页</b></td><td>私有化付费</td><td>私有化付费</td></tr>
|
||||||
<tr><td>私有化 / 买断参考价</td><td class="hl"><b>¥8,000/年起 · ¥30,000 买断</b></td><td>询价</td><td>询价</td></tr>
|
<tr><td>私有化 / 买断参考价</td><td class="hl"><b>¥8,000/年起 · ¥30,000 买断</b></td><td>询价</td><td>询价</td></tr>
|
||||||
<tr><td>内置用户文档站</td><td class="hl"><b>✓ /docs</b></td><td>—</td><td>—</td></tr>
|
<tr><td>自动化测试断言</td><td class="hl"><b>10 种 + JSONPath</b></td><td>✓</td><td>✓</td></tr>
|
||||||
|
<tr><td>AI 生成测试用例</td><td class="hl"><b>✓ 自带 Key 多厂商</b></td><td>付费 AI 额度</td><td>付费 AI 额度</td></tr>
|
||||||
|
<tr><td>用例定时调度</td><td class="hl"><b>✓ 5 段 Cron</b></td><td>固定间隔</td><td>固定间隔</td></tr>
|
||||||
|
<tr><td>内置用户文档站</td><td class="hl"><b>✓ /docs</b></td><td>—</td><td>—</td></tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@@ -229,11 +262,13 @@
|
|||||||
<div class="pricing three">
|
<div class="pricing three">
|
||||||
<div class="price-card">
|
<div class="price-card">
|
||||||
<div class="plan">专业版</div>
|
<div class="plan">专业版</div>
|
||||||
<div class="price"><b>¥99</b><span>/ 年</span></div>
|
<div class="price"><b>¥99</b><span>/ 年</span> · 永久 <b>¥199</b></div>
|
||||||
<div class="plan-sub">单设备授权 · 全功能</div>
|
<div class="plan-sub">包年 3 台 / 永久 5 台设备 · 全功能</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>✓ 六种协议全部调试能力</li>
|
<li>✓ 六种协议全部调试能力</li>
|
||||||
<li>✓ 集合 / 环境 / 历史无限量</li>
|
<li>✓ 集合 / 环境 / 历史无限量</li>
|
||||||
|
<li>✓ AI 生成用例 + Cron 定时测试</li>
|
||||||
|
<li>✓ Mock 发布 / 文档快照分享</li>
|
||||||
<li>✓ 全格式导入导出 + 代码生成</li>
|
<li>✓ 全格式导入导出 + 代码生成</li>
|
||||||
<li>✓ 桌面端单机全功能</li>
|
<li>✓ 桌面端单机全功能</li>
|
||||||
<li>✓ 1 年免费升级</li>
|
<li>✓ 1 年免费升级</li>
|
||||||
@@ -246,7 +281,7 @@
|
|||||||
<div class="price"><b>¥99</b><span>/ 人 / 年</span></div>
|
<div class="price"><b>¥99</b><span>/ 人 / 年</span></div>
|
||||||
<div class="plan-sub">按席位授权 · 5 席起</div>
|
<div class="plan-sub">按席位授权 · 5 席起</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>✓ 个人版全部能力</li>
|
<li>✓ 专业版全部能力</li>
|
||||||
<li>✓ 集合批量导入分发</li>
|
<li>✓ 集合批量导入分发</li>
|
||||||
<li>✓ 内网自托管(单二进制)</li>
|
<li>✓ 内网自托管(单二进制)</li>
|
||||||
<li>✓ 优先技术支持</li>
|
<li>✓ 优先技术支持</li>
|
||||||
|
|||||||
@@ -100,10 +100,11 @@
|
|||||||
<div class="price price-num"><b data-price="year">¥99</b><b data-price="life" style="display:none">¥199</b><span>/ 年</span></div>
|
<div class="price price-num"><b data-price="year">¥99</b><b data-price="life" style="display:none">¥199</b><span>/ 年</span></div>
|
||||||
<div class="plan-sub">单人不分设备多少 · 最多 3 台设备同时激活</div>
|
<div class="plan-sub">单人不分设备多少 · 最多 3 台设备同时激活</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li>六种协议全部调试能力</li>
|
<li>六种协议全部调试能力(WS 握手头 / SSE 续传)</li>
|
||||||
<li>集合 / 环境 / 历史无限量</li>
|
<li>自动化测试:10 种断言 + Cron 定时 + 报告导出</li>
|
||||||
<li>全格式导入导出 + 代码生成</li>
|
<li>AI 生成场景用例(DeepSeek / 智谱 / Kimi / Ollama)</li>
|
||||||
<li>本机 Mock 服务</li>
|
<li>智能 Mock 发布 + 内网文档快照分享</li>
|
||||||
|
<li>九种格式导入 + 四语言代码生成</li>
|
||||||
<li>设备可自助解绑迁移</li>
|
<li>设备可自助解绑迁移</li>
|
||||||
<li>1 年免费升级<span data-price="life" style="display:none">(永久版含后续更新)</span></li>
|
<li>1 年免费升级<span data-price="life" style="display:none">(永久版含后续更新)</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
Reference in new issue
Block a user