Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何使用Swagger UI访问AWS API网关文档_Amazon Web Services_Aws Sdk_Aws Api Gateway - Fatal编程技术网

Amazon web services 如何使用Swagger UI访问AWS API网关文档

Amazon web services 如何使用Swagger UI访问AWS API网关文档,amazon-web-services,aws-sdk,aws-api-gateway,Amazon Web Services,Aws Sdk,Aws Api Gateway,我已经使用AWSAPI网关创建了API。然后,我为所有实体(如API、资源、方法、模型等)编写了文档部分。然后,我使用AWS网关控制台将文档发布到版本为1 但我不确定我(或API的使用者)如何访问文档 有一个Export选项,可以将文档导出为Swagger或OpenAPI3。这将创建.json或.yaml文件,然后消费者必须将这些文件导入swagger UI。但是,每次我向所有用户更新文档时,都要提供一个swagger文件,这不是一个用户友好的选项 我想知道,在发布文档之后,消费者是否可以通过h

我已经使用AWSAPI网关创建了API。然后,我为所有实体(如API、资源、方法、模型等)编写了文档部分。然后,我使用AWS网关控制台将文档发布到版本为
1

但我不确定我(或API的使用者)如何访问文档

有一个
Export
选项,可以将文档导出为
Swagger
OpenAPI3
。这将创建
.json
.yaml
文件,然后消费者必须将这些文件导入swagger UI。但是,每次我向所有用户更新文档时,都要提供一个swagger文件,这不是一个用户友好的选项

我想知道,在发布文档之后,消费者是否可以通过http直接访问文档。因此,让我们假设我的
dev
stageapi URL是
https://devapi.example.com/v1
https://devapi.example.com/v1/help应使用最新发布的招摇过市文件启动招摇过市UI

更新1
在ASP.NET Web API或.NET Core中,您可以包括
Swashback
,它创建了swagger文件,并且还具有swagger UI工具的嵌入式版本。所以在部署API之后,用户可以直接从UI访问文档,比如
https://devapi.example.com/swagger


我希望AWS gateway也能做到这一点。发布文档后,它应该通过一些预定义的资源路径使文档可用。

AWS API网关只能使文档可导出,但不会呈现UI应用程序。网关中没有可用于呈现文档的端点。您可能希望使用第三方工具或允许用户浏览API文档。您可能会发现这很有用。

从AmazonAPI网关导入swagger规范,并从中提供一个swagger UI

您可以让它在EC2实例上运行:

npm i -g micro-swagger
micro-swagger start

它将使用实例的IAM角色从API网关下载Swagger规范。无论何时部署,您的CI/CD管道都可以重新启动/刷新Micro Swagger。您的客户可以在实例的域中查看最新的API文档。

我认为这是一个真正的问题。我在AWS中找不到任何信息。想解释一下为什么投票否决这个问题吗?如果API网关符合OpenAPI 3关于文件位置的“应该”条款,您可以尝试
OpenAPI.json
OpenAPI.yaml
。我的问题问得不对。我想知道AWSAPI网关是否可以使用Swagger UI显示文档?开箱即用虽然这可以解决问题,但它不能解释为什么或如何回答这个问题。请,因为这确实有助于提高你的文章质量。请记住,您将为将来的读者回答这个问题,而这些人可能不知道您提出建议的原因。@SamuelPhilipp,我已更新了答案以包含解释。谢谢A.Khan;-)这篇博文现在有点过时了,最好去开发者门户网站(链接在上面)并按照自述进行操作。我很高兴你发现这个答案很有用,Mike;)