OpenAPI 与招摇
OpenAPI vs swagger
与 swagger 相比,使用 OpenApi 的实际优势是什么?
我是 openApi 技术的新手,只是想知道 openApi 比 swagger 有更多的功能。在线文档对我没有帮助。谁能帮我。
OpenApi 本质上是 swagger 的进一步发展,因此版本 3.0.0 而不是 1.0.0
如果你看过 swagger blog Swagger 已移交给 OpenAPI Initiative,并且 editor.swagger.io 等所有 swagger 工具都支持 openapi,以及两者之间的转换。
如他们所写
OpenAPI = Specification
Swagger = Tools for implementing the specification
(swagger 也是规范前两次迭代的术语)
如果不受具体版本的限制,我推荐openapi,理论上社区更大,而且有happened a lot since swagger v. 2.0.0,如简单易用
支持更多的安全方案,根据您是在路径、查询、header 还是 cookie 中增强参数类型。
定义示例的方式也有所改进。我参与了一个项目,我们希望使用 openapi 而不是 swagger 来实现这个共鸣,不幸的是,API GW 还不支持它...
Swagger 2.0 在 OpenAPI3.0 出现之前非常流行,有很多改进,领域的整合。有许多工具支持 parsing/validating 等的新规范。
除了上面回复中已经提到的内容之外,我发现指定 'server' 的更改非常重要。
Swagger 2.0 只允许一种主机+基本路径组合,唯一的灵活性是
http 和 https 方案。如果您可能有多个子域用于 API 主机,或者在 SaaS 世界的情况下,您可能有租户变量,则它没有用。
"host": "petstore.swagger.io",
"basePath": "/v1",
"schemes": [
"http",
"https"
]
OpenAPI3.0 通过添加多个服务器 URL 以及 URL 中占位符的变量定义来满足此要求。
它在路径甚至操作级别定义服务器方面领先一步。
另一个是参数规范的多样性。 Swagger 2.0 对与类型有关的参数的支持有限(除了正文模式之外,大多数原语都被允许)并且不支持 cookie。 OpenAPI 3.0 甚至允许参数的模式并将正文分隔到专用的 requestBody 字段中。 cookie
是现在发送参数的额外 in
位置。
简而言之,OpenAPI 3.0 现在非常详尽地支持多个用例,考虑它可能有意义。
与 swagger 相比,使用 OpenApi 的实际优势是什么?
我是 openApi 技术的新手,只是想知道 openApi 比 swagger 有更多的功能。在线文档对我没有帮助。谁能帮我。
OpenApi 本质上是 swagger 的进一步发展,因此版本 3.0.0 而不是 1.0.0
如果你看过 swagger blog Swagger 已移交给 OpenAPI Initiative,并且 editor.swagger.io 等所有 swagger 工具都支持 openapi,以及两者之间的转换。
如他们所写
OpenAPI = Specification
Swagger = Tools for implementing the specification
(swagger 也是规范前两次迭代的术语)
如果不受具体版本的限制,我推荐openapi,理论上社区更大,而且有happened a lot since swagger v. 2.0.0,如简单易用
支持更多的安全方案,根据您是在路径、查询、header 还是 cookie 中增强参数类型。
定义示例的方式也有所改进。我参与了一个项目,我们希望使用 openapi 而不是 swagger 来实现这个共鸣,不幸的是,API GW 还不支持它...
Swagger 2.0 在 OpenAPI3.0 出现之前非常流行,有很多改进,领域的整合。有许多工具支持 parsing/validating 等的新规范。 除了上面回复中已经提到的内容之外,我发现指定 'server' 的更改非常重要。
Swagger 2.0 只允许一种主机+基本路径组合,唯一的灵活性是 http 和 https 方案。如果您可能有多个子域用于 API 主机,或者在 SaaS 世界的情况下,您可能有租户变量,则它没有用。
"host": "petstore.swagger.io",
"basePath": "/v1",
"schemes": [
"http",
"https"
]
OpenAPI3.0 通过添加多个服务器 URL 以及 URL 中占位符的变量定义来满足此要求。 它在路径甚至操作级别定义服务器方面领先一步。
另一个是参数规范的多样性。 Swagger 2.0 对与类型有关的参数的支持有限(除了正文模式之外,大多数原语都被允许)并且不支持 cookie。 OpenAPI 3.0 甚至允许参数的模式并将正文分隔到专用的 requestBody 字段中。 cookie
是现在发送参数的额外 in
位置。
简而言之,OpenAPI 3.0 现在非常详尽地支持多个用例,考虑它可能有意义。