使用OpenApi相比Swagger的实际优势是什么?
我对OpenApi技术还很陌生,想知道在OpenApi中有哪些比Swagger更多的功能。在线文档对我并没有帮助,有人可以帮忙吗?
使用OpenApi相比Swagger的实际优势是什么?
我对OpenApi技术还很陌生,想知道在OpenApi中有哪些比Swagger更多的功能。在线文档对我并没有帮助,有人可以帮忙吗?
OpenApi实质上是swagger的进一步开发,因此版本号为3.0.0而不是1.0.0。
如果您阅读swagger博客,则会了解Swagger已移交给OpenAPI倡议组织,所有Swagger工具(例如editor.swagger.io)都支持openapi,且两者之间可以相互转换。
正如他们所写:
OpenAPI = 规范
Swagger = 实现规范的工具
(swagger也是前两个规范迭代的术语)
如果您没有受到特定版本的限制,我建议使用openapi,因为社区理论上更大,并且自swagger v. 2.0.0以来发生了很多变化,例如简化和易用性提高。
支持更多安全方案,增强参数类型基于它们是否在路径、查询、标头或cookie中。
此外,你可以更好地定义示例。我曾参与过一个项目,我们希望使用OpenAPI而不是Swagger,但很遗憾,API网关尚未支持它...在OpenAPI 3.0推出之前,Swagger 2.0非常受欢迎,但是OpenAPI 3.0通过改进和字段的整合使得规范更加完善。目前有许多工具支持解析/验证新的规范。
除了以上回复中提到的内容外,我认为指定“服务器”的变化也很重要。
Swagger 2.0仅允许一个主机+基本路径组合,并且唯一的灵活性是http和https协议。这对于可能有多个子域名用于API主机的情况或者在SaaS世界中需要租户变量的情况下并不实用。
"host": "petstore.swagger.io",
"basePath": "/v1",
"schemes": [
"http",
"https"
]