# API 响应契约校验器

将真实 API 响应 JSON 与 OpenAPI 3.x 中声明的 response schema 对照校验

> 标准页面: https://elysiatools.com/zh/tools/api-response-contract-validator

- **分类:** Development

- **关键词:** openapi, api, 响应校验, schema, contract

## 概述

粘贴 OpenAPI 3.x 文档和一个真实 API 响应，再指定 path、method 与 status code。工具会解析对应的 response schema，并高亮缺失字段、类型错误、枚举越界和未文档化字段。

使用说明：
- OpenAPI 规范：粘贴 YAML 或 JSON
- 响应 JSON：粘贴实际返回负载
- 路径 / 方法 / 状态码：指定要校验的 operation 与响应分支
- 规范格式：不确定时用 auto
- 禁止额外字段：对 schema 里未声明的字段给出警告

## 输入项

- **OpenAPI 规范** (textarea): openapi: 3.0.3 paths: /users/{id}: ...
- **响应 JSON** (textarea): {"id":1,"name":"Alice"}
- **路径** (text): /users/123
- **方法** (select)
- **状态码** (text): 200
- **规范格式** (select)
- **禁止额外字段** (checkbox)

## 适用场景

- 在前后端联调阶段，需要验证后端实际返回的 JSON 数据是否严格符合 API 文档定义时。
- 在进行接口自动化测试或回归测试时，排查因后端代码变更导致的响应字段缺失或类型漂移问题。
- 在接入第三方 API 时，检查对方返回的实际数据结构是否与其提供的 OpenAPI 规范一致。

## 工作原理

- 在输入框中分别粘贴 OpenAPI 3.x 规范（支持 YAML 或 JSON 格式）以及实际的 API 响应 JSON 数据。
- 指定需要校验的 API 路径（Path）、请求方法（Method）以及预期的 HTTP 状态码（如 200）。
- 勾选是否禁止额外字段（Disallow Additional Properties），以严格检查响应中是否存在未在 Schema 中声明的冗余数据。
- 工具将自动解析对应的 Response Schema，并输出详细的校验报告，直观展示类型不匹配、字段缺失等契约违背情况。

## 使用案例

- 前端开发者在对接后端接口前，验证 Mock 数据或测试环境真实返回是否符合契约，避免因字段类型错误导致前端渲染崩溃。
- 测试工程师在编写接口自动化脚本时，快速校验生产环境的 API 响应是否发生了未通知的结构变更（契约漂移）。
- API 提供方在发布新版本前，自测接口返回值是否严格遵守了对外发布的 OpenAPI 规范文档。

## 常见问题

### 支持哪些版本的 OpenAPI 规范？

当前工具主要支持 OpenAPI 3.x 版本的规范文档，您可以粘贴 YAML 或 JSON 格式的规范内容。

### 如何处理规范格式不确定的情况？

您可以将规范格式（Spec Format）设置为“Auto”，工具会自动识别您粘贴的规范内容是 YAML 还是 JSON 格式。

### 什么是“禁止额外字段”功能？

勾选此选项后，如果实际响应 JSON 中包含了 OpenAPI Schema 中未声明的字段，工具会将其标记为警告或错误，帮助您发现未文档化的冗余数据。

### 为什么需要指定路径、方法和状态码？

一个 OpenAPI 文档通常包含多个接口和不同的响应状态。指定这些参数可以帮助工具精确定位到需要校验的具体 Response Schema 分支。

### 如果响应 JSON 中缺少必填字段会怎样？

工具会根据 OpenAPI 规范中的 required 属性进行检查，如果实际响应中缺少这些必填字段，校验报告中会明确高亮提示缺失错误。

## 相关工具

- [JSON Schema 生成器](https://elysiatools.com/zh/tools/json-schema-generator): 从示例 JSON 自动推断 JSON Schema，支持手动调整并验证数据
- [OCR PDF 转结构化 JSON 桥](https://elysiatools.com/zh/tools/ocr-pdf-to-structured-json-bridge): 按几何结构抽取 PDF 文本层（y 坐标分行、列间隙识表、字号识标题、冒号键值对），然后逐字段填入用户提供的 JSON Schema——标签按归一化键名匹配、值按声明类型归一化，并用 ajv 校验。
- [短链 + UTM + 二维码一体构建器](https://elysiatools.com/zh/tools/short-url-utm-builder-qr-bundle): 一次输入替代 bit.ly + Google Campaign Builder + 二维码生成器三件套：输入落地页与 UTM 参数（GA4 必填三件套强制校验、可选小写规范化），生成完整追踪 URL；在自有短链域名上生成确定性 base62 slug（FNV-1a 哈希，同样输入永远同样 slug，无需联网注册），输出短链与完整链两张二维码 PNG，并附带 nginx / vercel.json / Netlify 重定向配置与营销追踪表 CSV 行。
- [训练/测试集分层切分器](https://elysiatools.com/zh/tools/train-test-split-with-stratification): 读取 CSV/JSON 数据集,按目标列做分层抽样的 train/validation/test 切分(默认 70/15/15,随机种子可复现),或分层 k 折交叉验证;输出每折类别分布报告与偏差条、重复行泄漏检查、SMOTE 过采样预览(仅在训练折上做最近邻插值),并可导出各折 CSV 为 ZIP。
- [JSON模式校验器](https://elysiatools.com/zh/tools/json-schema-validator): 验证JSON数据是否符合JSON Schema结构定义
- [JSONPath 交互式测试场](https://elysiatools.com/zh/tools/jsonpath-repl-playground): 一个交互式 JSONPath REPL，可对任意 JSON 运行多步查询管道。每行写一个 JSONPath 表达式（例如先 $..book\[?(@.price<10)\]，再 $\[0:5\]），即可看到每一步的匹配数、路径和值——还附带一个可分享的 URL，编码了你的数据和管道。支持递归下降（$..）、通配符（\[*\]）、过滤器（\[?(@.price<10)\]）、切片（\[0:5:2\]）和负索引。
- [OpenAPI 转 Postman Collection](https://elysiatools.com/zh/tools/openapi-to-postman-collection): 把 OpenAPI 3.x 或 Swagger 2.0 规范（JSON/YAML）转成可直接导入的 Postman Collection v2.1.0，含文件夹、变量、认证与示例响应。
- [OpenAPI 转 TypeScript 类型生成器](https://elysiatools.com/zh/tools/openapi-to-typescript-generator): 将 OpenAPI 或 Swagger 的 JSON/YAML 规范转换为 TypeScript 接口类型、请求参数类型和响应类型，并支持输出格式与命名风格配置

## 示例

- [Postman Collections - API 测试](https://elysiatools.com/zh/samples/postman-collections): 全面的 Postman collection 示例，包括 API 测试、自动化脚本、环境变量、mock 服务器和 REST API 的高级测试模式
- [AWS EventBridge 示例](https://elysiatools.com/zh/samples/eventbridge-samples): AWS EventBridge 示例，包括事件总线、规则、目标、模式注册表、自定义事件和跨账户事件路由，适用于无服务器事件驱动架构
- [OpenAPI/Swagger 示例](https://elysiatools.com/zh/samples/openapi-swagger): 使用 OpenAPI 3.0 和 Swagger 规范的 RESTful 服务综合 API 文档示例
- [分布式追踪示例](https://elysiatools.com/zh/samples/distributed-tracing-samples): 使用 Jaeger、OpenTelemetry 和其他现代可观测性工具的综合分布式追踪示例，适用于微服务架构

## 相关内容

- [API 契约定义、Schema 校验与变更测试](https://elysiatools.com/zh/hubs/api-contract-testing): 定义 API 契约，校验 Schema 和已捕获载荷，识别兼容性风险，并记录测试验收结果。
- [API 版本升级与破坏性变更审查](https://elysiatools.com/zh/hubs/api-versioning-breaking-change-review): 对比 API 版本、规划迁移并在发布前验收兼容性。工具不替代真实发布和运行监控。
- [JSON 实用、检查与转换工具](https://elysiatools.com/zh/hubs/json-utility): 为 API 与数据流程格式化、检查、对比、合并、转换、校验、分析并水印 JSON 负载。
- [JSON Schema 与 API 契约校验工具](https://elysiatools.com/zh/hubs/json-validate): 在一个专题中比较 JSON Schema 校验、OpenAPI 响应检查、变异测试、压力测试和破坏性变更检测工具，适合 API 契约审查流程。
