11 浏览器、接口与契约调试
调试工具的价值不在“能发请求”,而在于缩短证据链:谁发出请求、经过哪条网络路径、携带什么身份、命中了哪份契约、在哪一层失败。截图只能证明现象;可重复请求、版本、环境、退出状态和服务端 trace 才能让另一个人在干净环境中复核。
按故障现场选择入口
| 现场 | 第一入口 | 必须留下的证据 |
|---|---|---|
| 页面白屏、Cookie 或浏览器安全状态异常 | Chrome DevTools、Edge DevTools | Network、Console、Application、Security、短 Performance trace |
| 页面性能审计波动 | Lighthouse | 工具与 Chrome 版本、运行条件、多次样本、HTML/JSON 报告 |
| HTTP 请求需压缩为命令 | curl | 构建能力、分阶段计时、TLS、退出码、脱敏 trace |
| 人工构造可读 HTTP 请求 | HTTPie | 版本、最终请求、Session 边界、退出状态 |
| 团队复用 API Collection | Postman、Apifox、Insomnia、Bruno | 主源、环境、Secret 注入、CLI 报告与退出路径 |
| API 规范与实现漂移 | OpenAPI | 规范版本、根文件、引用闭包、消费者兼容证据 |
| 编辑或交互预览契约 | Swagger | 镜像版本、契约 artifact、Try it out 与授权反例 |
| lint、bundle 与静态文档交付 | Redocly | 锁版 CLI、规则、bundle、公开过滤与制品清理 |
| gRPC 稳定复现与 CI smoke | grpcurl | 描述符来源、metadata、TLS、status 与 request id |
| gRPC 交互探索 | Evans | package/service/call 上下文、会话凭证与流式收尾 |
| 服务内嵌 GraphQL IDE | GraphiQL | fetcher、路由授权、storage、data/errors 与查询成本 |
| 跨环境 GraphQL 探索 | Altair | collection、环境、headers、schema、响应历史与清理 |
一次可信的调试闭环
共享材料不得包含真实 token、Cookie、客户端私钥、个人信息、内部响应正文或未审查的 HAR/trace。Collection、Session、环境文件、契约 examples 和截图都可能泄漏数据。凭证一旦进入终端历史、日志或 Git,按已泄漏处理并轮换。
格式不要求统一,验收事实必须统一:工具版本可追溯;目标与环境明确;成功和预期失败都有证据;服务端能按 request id 对齐;自动化能传播失败;临时账号、状态、制品与本地缓存有清理路径。
