Files
opsxapi/apps/server/internal/docs/content/19-faq.md
T
logan 1bcd7be2ac AI 大模型接入 + 自动化测试(手动/AI/定时三种触发)
- 自动化测试核心(packages/core/src/testing.ts):
  - JSONPath 求值($.a.b[0].c)、断言评估(状态码/耗时/Header/Body × 10 种操作)
  - 变量提取(响应 → 当前环境,{{var}} 链式传值)、Markdown 报告导出
- 用例模型:场景用例 = 有序步骤(引用 HTTP 接口 + 断言 + 提取),失败后继续可选
- 执行器 testRunner + 定时调度器 scheduler(应用运行期间按间隔自动执行)
- TestingView:用例列表 / 步骤编排 / 断言与提取编辑器 / 报告(统计卡+断言明细+过滤+再次运行+导出)
- AI 助手:OpenAI 兼容客户端(DeepSeek/智谱/Kimi/OpenAI/Ollama 预设)
  - 设置 → AI 助手:供应商 CRUD + 测试连接 + 当前使用切换
  - AI 生成场景用例:读取集合接口清单 → 编排步骤/断言/提取 → 预览保存
- 入口:侧栏底部「自动化测试」+ ⋯ 菜单;文档新增 /docs/testing /docs/ai
- 新增 11 个引擎单测(总 48 前端用例全绿);本地 E2E:运行通过+断言通过+petId 提取验证
2026-09-18 01:57:57 +08:00

2.1 KiB
Raw Blame History

请求报 CORS 错误?

Web 端请求默认经本地 Gin 代理(gin-proxy)发出,不会遇到 CORS。若仍报错:

  • 确认 Gin 在运行:curl http://127.0.0.1:8787/health。
  • 用 ./run.sh web / gui 场景启动(Vite 已配置 /v1 反代)。
  • 桌面端优先走 Tauri 原生网络栈,同样不受 CORS 限制。

浏览器 WebSocket 不能加自定义 Header?

规范限制。在 WS「握手配置」里填写 Header 后,OpsxAPI 自动改走本地 Gin 隧道(见《WebSocket》章节),Header 由 Gin 在握手时代为携带。不填 Header 则直连。

外部 wss:// 地址连不上(DNS 失败)?

本机网络环境可能限制部分域名解析。可先用 curl -v wss://… 或换用公共 echo 服务验证;自建服务请确认防火墙与证书。

MQTT 一定要 wss:// 吗?

浏览器只能通过 WebSocket 连 MQTT。常见 Broker 的 WS 端口:EMQX 8084/mqtt(TLS)、8083/mqtt(明文,仅 http 页面)。mqtt:// TCP 直连仅在桌面原生环境可行。

数据存在哪里?换电脑怎么办?

集合 / 环境 / 历史保存在浏览器 localStorage。迁移:导出 → 全量备份 生成 JSON,在新设备 导入 即可。

误删了接口 / 想回到初始状态?

设置(顶栏 ⋯)→ 重置工作区,恢复内置示例集合。日常请养成导出备份的习惯。

SSE 事件流看着卡住了?

  • 事件频率低(如告警流)属正常,等待即可。
  • 部分网关会缓冲 SSE,工具会在直连失败时自动切换 Gin 流式代理;若仍无事件,检查中间层(Nginx 需关闭 proxy_buffering)。

发送按钮点击后没反应?

查看响应区是否有红色错误提示(如代理不可达)。</> 代码 生成 cURL 在终端执行可快速分辨是工具问题还是网络 / 接口问题。

支持文件上传吗?

form-data 当前支持文本字段;文件上传请用 </> 代码 生成的 cURL / 脚本执行。

更多问题?

  • 服务端能力与边界:见《服务端 API 参考》
  • 各协议用法:见左侧「请求调试」分组