2016年4月5日,Amazon 宣布 更新其API管理服务Amazon API网关。经过此次更新,Amazon API网关现在支持直接导入Swagger 2.0的API定义了。
Swagger是一种规范,允许开发人员使用一种通用描述语言表示REST API。开发人员可以使用swagger编辑器设计REST API,作为这种体验的一部分,文档和元数据也会通过工具显示出来。使用Swagger定义可以创建模拟测试客户端和面向多种语言的SDK,包括Java、JavaScript、Ruby、PHP和C#,这可以为想要使用你的API的组织缩短开发周期。
自Amazon API网关服务推出以来,Swagger就是它支持的一种API规范。但是,开发人员之前需要使用Swagger导入工具将Swagger定义导入到API网关。Swagger导入工具可以从 GitHub 上下载,它提供了一种命令行工具体验:
图片来源: http://swagger.io/getting-started-with-the-amazon-swagger-importer/
今后,开发人员可以使用AWS管理控制台、命令行接口(CLI)或SDK。开发人员可以在AWS管理控制台上进行如下操作:
图片来源: http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-create-api-from-example.html
到今年1月1日,Swagger规范已经捐献给 Open API Initiative(OAI) 。OAI意在将对标准化REST API描述感兴趣的组织团结在一起。OAI在Linux基金会下以一个开放的治理结构运营,其成员包含许多行业领导者,包括Google、Apigee、Atlassian、IBM、Intuit、Microsoft、PayPal等等。
Swagger并不是Amazon API网关唯一支持的一种API规范。该服务还支持一种与其存在竞争关系的规范 RAML 。在本文写作的时候,Amazon已经 指出 ,“使用RAML定义的客户当前应该继续使用aws-apigateway-importer。”RAML是由 Mulesoft 领导的一个开放的工作组,获得了包括Cisco(Mulesoft投资人之一)、VMWare和Akana在内的其他成员的支持。
查看英文原文: Amazon API Gateway Now Supports Swagger Definition Import