今年早些时候,亚马逊网络服务 (AWS) 推出了其 Amazon API Gateway——一个功能全面的产品,用于管理在多个云平台上运行的 API。API Gateway 使您能够管理 API 的所有方面,包括定义和更新由 Amazon API Gateway 管理的 API 定义。作为发布的一部分,AWS 还创建了一个命令行工具,允许您使用 Swagger 定义在 Amazon API Gateway 中创建或更新 API。Swagger 导入器已在 GitHub 上提供给拥有 AWS 账户的任何人使用。
“以大规模构建和运行坚如磐石的 API 对客户来说是一个重大挑战。然而,这是构建和运营通过多种设备消费的现代应用程序最重要的组成部分之一。为了帮助客户克服这一挑战,我们推出了 Amazon API Gateway,”AWS 副总裁 Marco Argenti 说。“发布 Swagger 导入工具是 Amazon API Gateway 的一个重要里程碑,因为它允许我们的客户在不显著改变现有工作流程的情况下与服务交互。通过使用 Swagger 进行 API 定义,AWS 客户还可以利用所有可用于 Swagger 的开源工具,例如文档生成。”
让我们快速逐步地了解如何使用此工具将 Swagger 定义导入到 Amazon API Gateway。
步骤 1 - 创建 AWS 账户
如果您还没有 AWS 账户,现在就是创建一个的时候了。注册后,您可以从 AWS 控制面板访问 API 管理器。
步骤 2 - 克隆包含导入器的 GitHub 仓库并在本地构建它
这需要您具备一定的技术知识;您需要在本地安装 git 客户端、Java 8 和 Maven。首先在您的机器上创建一个空目录,并在其中运行以下命令:
git clone https://github.com/awslabs/aws-apigateway-swagger-importer.git
克隆仓库后,使用以下命令构建工具。
mvn assembly:assembly
这将需要一段时间,希望最终能得到类似下面的输出:

步骤 3 - 安装和配置 Amazon 命令行界面 (CLI)
从 http://aws.amazon.com/cli/ 为您的操作系统下载,并按照 http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html 所述进行配置,以便您的系统已设置为访问您的 AWS 账户。
现在您已准备好导入您的 Swagger 定义!
步骤 4 - 导入您的 Swagger!
导入很简单——确保您有 Swagger 2.0 定义的本地路径,并运行以下命令(仍在您上面构建的 aws 导入器文件夹中):
/aws-api-import.sh --create <path-to-local-swagger-json>
如果一切顺利,您应该得到类似下面的输出:

(导入的文件是 Swagger 示例,可在 https://github.com/swagger-api/swagger-spec/blob/master/examples/v2.0/json/petstore-minimal.json 找到)
切换回 AWS 上的 API 管理器控制台,应该会显示您的 API。

深入到导入的方法,您将看到:

太棒了——现在您已准备好通过 Amazon 开始管理您的 API——请继续阅读有关 Lambda 函数(或 HTTP 代理)的信息:http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started.html
步骤 5 - 深入了解!
就是这样——实际上相当简单——但我们毕竟在谈论 Swagger 和 AWS,所以您还能期待什么呢。祝您使用愉快!