JSON Schema 和 OpenAPI Schema 有什么区别?
两者都能描述 JSON,但目标、关键字支持和工具链不同,不能简单互换,生成代码前应先确定契约版本。
先看使用目标
JSON Schema 主要描述实例是否符合约束,适用于校验、表单和数据契约;OpenAPI Schema 服务于 HTTP API 文档,还要和路径、参数、响应及认证信息一起工作。
为什么转换不是无损的
不同版本的 OpenAPI 对 JSON Schema 关键字的支持并不完全一致。组合、引用、默认值和可空语义需要按目标版本检查,生成的类型也不能代替编译和接口测试。
推荐流程
先确定目标 OpenAPI 版本或 JSON Schema 草案,再用对应生成器输出类型,最后用真实 API 响应和负例做校验。不要把样例 JSON 直接当成完整契约。
相关工具
参考来源
最后更新: 2026-08-23