关键信息
- 分类
- Development
- 输入类型
- textarea, select, text, checkbox
- 输出类型
- json
- 样本覆盖
- 4
- 支持 API
- Yes
概览
OpenAPI 变更破坏检测器是一款专为 API 团队设计的 Schema 对比工具。通过输入新旧版本的 OpenAPI 或 GraphQL 契约文件,工具能自动识别并标记出可能导致客户端崩溃的破坏性变更(Breaking Changes),如删除响应字段或新增必填参数,并生成结构化的影响分析报告,帮助开发者在发布前拦截潜在风险,保障接口的向下兼容性。
适用场景
- •在 API 网关或后端服务发布新版本前,需要验证接口契约是否向下兼容时。
- •前端或移动端团队需要评估后端 GraphQL Schema 变更对现有查询和变更(Mutation)的影响时。
- •进行代码审查(Code Review)时,需要快速定位 OpenAPI 规范文件中被修改、删除或新增的字段时。
工作原理
- •在输入框中分别粘贴旧版本和新版本的 OpenAPI (YAML/JSON) 或 GraphQL SDL 文本。
- •选择 Schema 类型(支持自动检测、OpenAPI 或 GraphQL),并勾选是否包含影响分析。
- •工具将解析并对比两个 Schema 的结构差异,提取出所有变更项。
- •输出 JSON 格式的差异报告,按严重程度(如破坏性变更)分类,并评估整体发布风险。
使用场景
用户案例
1. 在发布前发现被删除的响应字段
后端开发工程师- 背景原因
- 团队正在重构用户服务,清理了一些被认为不再使用的旧字段,准备发布新版本。
- 解决问题
- 需要确认重构后的 OpenAPI 规范是否意外移除了前端仍在使用的响应字段,导致线上故障。
- 如何使用
- 将旧版和新版的 OpenAPI YAML 分别粘贴到旧 Schema 和新 Schema 输入框中,选择 openapi 类型并开启影响分析。
- 示例配置
-
{ "schemaType": "openapi", "includeImpactAnalysis": true } - 效果
- 工具检测到 200 响应中 email 字段被移除,标记为破坏性变更(Breaking Change),并提示发布风险为高(high),成功在上线前拦截了该问题。
2. 审查 GraphQL 输入契约变更
前端架构师- 背景原因
- 后端团队更新了 GraphQL Schema,在创建文章的 Mutation 中增加了一个分类字段。
- 解决问题
- 需要评估这个新字段是否会破坏现有的前端请求逻辑。
- 如何使用
- 将更新前后的 GraphQL SDL 粘贴到对比框中,选择 graphql 类型进行检测。
- 示例配置
-
{ "schemaType": "graphql", "includeImpactAnalysis": true } - 效果
- 报告明确指出 CreatePostInput 中新增了必填字段 category,属于破坏性变更,提醒前端团队必须在发版前同步更新 Mutation 传参。
用 Samples 测试
development相关专题
常见问题
支持哪些类型的 API 规范文件?
支持 OpenAPI (Swagger) 的 YAML 或 JSON 格式,以及 GraphQL 的 SDL (Schema Definition Language) 格式。
什么是破坏性变更(Breaking Change)?
指可能导致现有客户端请求失败的修改,例如删除已有的响应字段、修改字段类型或在请求体中新增必填参数。
工具能自动检测 Schema 类型吗?
可以。在“Schema 类型”选项中选择“Auto detect”,工具会根据输入内容自动识别是 OpenAPI 还是 GraphQL。
影响分析报告包含哪些内容?
报告包含整体发布风险评估(如 high)、变更总数统计,以及具体的变更路径、变更类型和对客户端的潜在影响说明。
我的 API 规范数据安全吗?
安全的。所有的 Schema 解析和对比均在处理时即时完成,工具不会永久存储您的 API 规范内容。