在线JSON Schema转换OpenAPI器
在不同标准之间迁移数据模型可能是一项繁琐的手动任务。我们的JSON Schema转换OpenAPI器JSON Schema可以自动执行此过程,让您立即将标准定义转换为与OpenAPI规范(OAS)兼容的格式。无论您是构建 Swagger 文档还是定义请求/响应正文,此工具都能确保准确性和合规性。
为什么要转换JSON Schema成OpenAPI?
虽然OpenAPI(以前称为 Swagger)使用了 的子集,但在不同版本(Draft 4、7 或 2019-09)和3.0/3.1 规范之间,某些关键字(如、和 )的处理JSON Schema方式存在关键差异。typenullableformatOpenAPI
弥合兼容性差距
OpenAPI3.0 版本有一些与标准版本不同的特定限制JSON Schema。我们的转换器可以处理这些细微差别,例如转换dependencies为兼容的逻辑或调整type数组以满足OpenAPI3.0 版本的严格要求,从而确保您的 API 文档仍然有效。
简化 API 开发
与其重写 API 文档的数据库模型或验证模式,不如直接粘贴现有的内容JSON Schema。这样可以减少人为错误,并确保后端逻辑和文档完美同步。
我们的转换器的主要特点
我们的工具是为那些在管理 API 规范时需要精确性和速度的开发人员设计的。
1. 支持多个JSON Schema草稿
无论您的源架构是基于Draft 4、7 还是 2020-12,我们的引擎都能识别其结构并将其映射到最接近的OpenAPI等效架构。
2. OpenAPI3.0 和 3.1 版本已准备就绪
OpenAPI3.1 版本现已完全兼容JSON Schema2019-09。但是,如果您仍在使用OpenAPI3.0 版本,我们的工具将自动“降级”特定字段(例如,nullable: true将 替换为type: ["string", "null"])以保持兼容性。
3. 即时验证和格式化
它不仅可以转换数据,还能美化输出结果。您将获得一个清晰、缩进正确且有效的OpenAPI模式,可以直接粘贴到您的components/schemas代码块中。
如何使用转换器
粘贴代码:将源代码复制JSON Schema到输入编辑器中。
选择版本(可选):选择您希望输出是针对OpenAPI3.0 标准还是更新的 3.1 标准进行优化。
点击“转换”:该工具将处理逻辑并在输出窗口中显示符合 OpenAPI 标准的结果。
复制和使用:使用“复制”按钮获取您的新架构,用于您的 Swagger 或 Redocly 文档。
需要注意的技术差异
处理“可空”属性
在标准中JSON Schema,可空字段通常定义为 `null` type: ["string", "null"]。在OpenAPI3.0 版本中,必须将其转换为type: string带有单独nullable: true属性的 `null` 类型。我们的转换器会自动处理此转换。
“格式”关键字
OpenAPI更广泛地使用format关键字进行验证(例如int32,,,,)。我们的工具确保这些格式在转换过程中得到保留并正确映射int64。floatdouble
常见问题解答(FAQ)
这个转换器与 Swagger 2.0 兼容吗?
虽然重点是OpenAPI3.x 版本,但生成的模式与 Swagger 2.0 基本兼容,不过definitions可能需要对该部分进行一些调整。
我的数据会离开我的浏览器吗?
不。所有转换逻辑都在您的浏览器本地使用 JavaScript 完成。您的敏感 API 架构信息绝不会发送到我们的服务器。
我可以转换大型、复杂的模式吗?
是的。我们的工具经过优化,能够处理深度嵌套的模式和大型对象定义,而不会出现性能延迟。