过去几年,基础设施逐渐向无服务器架构转变。基础设施即服务 (IaaS) 改变了格局,带来了低成本、敏捷性、可扩展性和可靠性。 Amazon API 网关就是这样一种无需过多介绍的服务。它是一个完全托管的平台,允许用户以任何规模构建、部署和管理 API。Amazon API 网关的重要方面是它支持 Swagger 定义格式来设计和构建 RESTful API,而 SwaggerHub 的核心就是 Swagger!
对于不熟悉的人来说,SwaggerHub 是一款免费的基于 SaaS 的产品,用于使用最新的 Swagger 规范设计和开发您的 API,无论是公共的还是内部的,将一些开源框架的最佳工具整合到一个平台上。SwaggerHub 为其用户提供多种服务,从协作到可视化和团队构建 API,再到集成,使您可以与现有工具集中的一系列第三方产品连接。

如果开发人员可以使用最佳工具来设计 API(从 API 模拟到强大的 API 编辑器的动态功能),并将其部署到 AWS API 网关,同时消除定义和 Lambda 函数之间通常需要的复杂配置,生活会变得轻松得多。
这正是 SwaggerHub 最新的 Amazon 网关集成的用武之地。借助 Amazon 网关集成,您可以快速自动地在 Amazon 网关上公开您的 API 以供使用。无服务器部署也得到了处理,SwaggerHub 可以根据 SwaggerHub 的 Swagger 定义自动生成 Amazon Lambda 中 API 代码的构建块!
SwaggerHub 有两个可用的 API 网关集成 –
- Amazon API 网关
- Amazon API 网关 Lambda 同步
要查看集成的实际效果,请查看此短视频演示!

Amazon API 网关
Amazon API 网关允许您在代理模式下快速在 Amazon 网关上部署您的 API,这让网关处理速率限制和身份验证等任务。用户可以将代理添加到集成中,这将 API 连接到 AWS 服务。这还将使定义与网关上的 API 保持同步。

Amazon API 网关 - Lambda 同步
AWS Lambda 是一种计算服务,无需预置或管理服务器即可运行代码。AWS Lambda 可以为任何应用程序或后端服务运行代码,集成允许用户创建 Lambda 函数并将 Lambda 函数与 Swagger 定义的 operationId 匹配。可以配置集成以使 API 定义与 Lambda 函数和 API 网关保持同步。Lambda 同步集成在网关上为您完成复杂的管道工作,这意味着用户只需担心应用程序的真正业务价值。

Lambda 函数是根据每个操作中的 operationId 创建和匹配的。如果您没有 operationId(在 OpenAPI 规范中是可选的),将为您创建一个。如果存在与 operationId 同名的 Lambda 函数,则将使用该函数,并且不会创建新函数。
要查看集成的实际效果,请查看此短视频演示!

上述集成可以进行连接,以最适合您的工作流程。这两个集成是强大的工具,可以使用 AWS API 网关以最有效的方式将您的 API 从设计阶段带到部署阶段。使用 SwaggerHub(它为设计 API 提供了最佳工具)并将其与 AWS 网关的可扩展性和可靠性相结合,肯定会让您的 API 开发过程变得轻而易举!