在 swagger 文档中隐藏 endpoint/request 类型:AWS Api Gateway、Swagger-UI 或其他方法?

Hiding an endpoint/request type in swagger documentation: AWS Api Gateway, Swagger-UI or another approach?

所以我们的团队有问题。

在此之前,先了解一下背景知识。我们有一个面向 API 的客户,它有一个随附的 API 文档页面。此文档页面是一个独立的应用程序,它使用 AWS SDK 从 AWS 获取 API 文档。每当我们对 API 进行更改时,我们都会更新一个 yaml 文件并使用以下命令进行部署

aws apigateway put-rest-api --rest-api-id XXXXXX --cli-binary-format raw-in-base64-out --mode merge --body 'file://Api.yaml'

aws apigateway create-deployment --rest-api XXXXXX --stage-name foostage

aws apigateway update-stage --stage-name foostage --rest-api-id XXXXXX --patch-operations "op=replace,path=/documentationVersion,value=$current_version" 其中$current_version是第一步部署的版本

我相信第一个命令使用 Api.yaml 更新我们其余 api 的定义,第二个命令将 API 的最新版本部署到 API 网关,最后一个命令是将$current_version,由put-rest-api命令创建的版本,文档部署到指定阶段。

如前所述,我们的文档应用程序连接到 AWS 以获取文档,然后我们使用 swagger-ui 呈现 swagger 文档。

回到问题。我们有一个端点(将来可能会有更多)需要从文档中隐藏,但仍需要包含在 API 网关中并且可以调用。我想知道最好的方法是什么? swagger-ui 组件中是否有功能或在文档中省略端点的方法?我目前的方法是蛮力,从我们提供给 swagger-ui 组件的 json 中删除端点。想知道是否有其他方法

我们最终在前端层省略了端点,我们从 AWS 提取文档,然后过滤文档并在将文档设置为 swagger-ui 插件实现的一部分之前省略端点.据我所知,目前没有干净的方法可以通过 swagger-ui 或 AWS.

省略端点