本周的Swagger 聚焦是对来自网络上使用 OpenAPI 规范和 Swagger 工具构建 API 的个人的最新内容综述。我们精选了本周的文章,但也接受在 Swagger 博客上发布的下一期Swagger 聚焦的投稿。如果您想撰写一篇 Swagger 聚焦专题文章,请在此处查看我们正在寻找的内容并立即提交您的主题。如果您希望围绕您正在进行的项目建立知名度,或者只是分享您在 Swagger 工具方面的知识,我们希望收到您的来信!
ICYMI – 上周的 Swagger 聚焦专题
在本文中,Thomas Pollet 将引导您了解如何使用他在 GitHub 上的项目,通过 Python 自动生成 OAS 规范 和 Swagger UI 文档。他创建了一个开源的 python-pip 包:safrs。safrs 是所用主要技术的首字母缩写:SqlAlchemy、Flask-Restful 和 Swagger。他讨论了该框架的目的是如何帮助 Python 开发人员为 sqlalchemy 数据库对象和关系创建自文档化的 JSON API。
我第一次接触 Swagger 是几年前,当时我必须使用 nutanix REST API 实现一个系统监控应用程序。我发现它是一种非常方便的调试和记录 Web 服务的方法。后来,当被要求为另一个项目提供文档时,我再次使用了 Swagger(现在是 OpenAPI)并实现了规范。
与今天的大多数 Web 服务一样,此项目的 API 端点提供了 CRUD 功能:对数据库后端执行创建、读取、更新、删除操作。规范中需要描述的许多信息已经隐式地编码到应用程序中,因此我决定使用可用的应用程序语义来生成规范,而不是手动编写规范。
阅读更多
本文将引导读者了解如何使用 Swagger UI 进行 API 测试。它首先介绍 Swagger UI 的基础知识,为什么它是一个很棒的工具,然后进入关于如何使用它测试 API 的教程。对于希望在 Swagger UI 中进行一些手动测试的人来说非常有用。本教程易于理解,而且直截了当。您可以按照示例 (http://petstore.swagger.io/v2/swagger.json) 进行操作,或使用您自己的 URL 尝试此操作。
在本文中,我将向您展示如何使用 Swagger UI 进行 API 测试。我们将首先讨论 Swagger UI 是什么以及为什么值得使用它,然后进入教程。
什么是 Swagger?
Swagger(现在被称为 Linux 基金会下的 OpenAPI 倡议)是一个通过使用一种开发人员和测试人员易于阅读和理解的通用语言来描述您的 API 的框架,即使他们对源代码的了解不深。您可以将其视为房屋的蓝图。您可以使用任何您喜欢的建筑材料,但您不能超出蓝图的参数…
阅读更多
在这篇文章中,Nikolaos Georgiou 讨论了如何使用 Swagger 工具和 OAS 使用 Java 和 Spring Boot 构建 REST API。他专注于使用 Swagger Codegen 在 Spring 中构建他的 API。他强调了需要非常了解信息,并清楚地介绍了如何生成代码。如果您正在寻找有关在 Spring 中生成代码的更多信息,请查看此内容。
在这篇文章中,我将使用 Swagger 和 Java 以及 Spring Boot 构建一个 REST API。Swagger 是一个 API 框架。它使用基于 YAML 的语言来定义 API,并且它有一个支持多种语言的代码生成器。
工具
Swagger 提供了一个在线编辑器,可用于开始使用该语言并熟悉语法。但是为了生成一些代码,最好在本地拥有代码生成器。
在编辑器的左侧,您可以看到 YAML 语法。在右侧,API 的预览会随着您修改 YAML 定义而实时更新…
阅读更多
本指南向您介绍了 schema-first(有时称为设计优先)API 设计背后的策略,以及如何使用 Swagger 工具开始使用 OpenAPI 规范。 Yos Riady 非常出色地强调了首先考虑 OpenAPI 规范进行设计的好处。如果您正在权衡使用 OAS 进行设计的优缺点,那么它非常深入并且是一个有价值的资源。
您正在构建一个 API。
您开发一个后端服务,其中包含几个端点,并将其部署到生产环境。您发布了几个官方的特定于语言的 API 客户端以及 API 文档。这一天在愉快的气氛中结束。
第二天,API 中添加了一个新功能。您必须
- 更新服务器实现以支持新功能。
- 更新所有客户端库(每个受支持的平台和语言一个 SDK)。
- 更新文档。
- 以上所有内容必须彼此一致。
- 此外,前端团队在您的后端 API 完成之前被阻止。
您叹了口气。有没有更好的方法来做到这一点?…
阅读更多
分享您的 Swagger
您是否希望在 Swagger 博客上突出显示您的工作?Swagger 聚焦是我们思想家和创造者社区与其他 Swagger 社区分享的一个机会。我们一直对人们使用 Swagger 工具构建的内容感兴趣,并且相信要突出这个社区正在做的伟大工作。