Coludformation模板中描述了现有的API。现在,我想使用Swagger记录API。有没有一种方法可以解析Cloudformation模板以创建swagger.yaml
规范文件?如果可能的话,我想避免再次编写API。
注意:我知道你可以使用Swagger定义API,然后将API配置导入Cloudformation模板。这不是我所需要的。Cloudformation已经存在,将不会更改。因此,我需要相反的事情:基于现有Cloudformation模板的Swagger配置文件。
无法将模板转换为我所知道的swagger文件。但是,如果你正在寻找一种仅将服务规范保留在一个位置(模板)并且已将其部署的方法,则可以从阶段中获取swagger或OAS文件(因此,你也必须有一个阶段)至少有两种方式:
通过Web控制台。使用Amazon API网关-> API->你的API->阶段>你的阶段->导出选项卡。如图所示:通过Web控制台将Swagger或OAS导出为文件
aws apigateway get-export ...
这是一个例子:
aws apigateway get-export --rest-api-id ${API_ID} --stage-name ${STAGE_NAME} --export-type swagger swagger.json
很好,非常感谢您的回答!这就是我想要的。遗憾的是,我们的API网关没有Swagger中所需的所有信息(例如错误响应,描述等),因此我必须手动编写Swagger规范文件。但是仍然感谢您的回答!