在 swagger ui 中隐藏一些 api

ppb*_*ppb 7 node.js swagger-ui hapijs hapi-swagger

是否可以在 hapi-swagger 中根据用户角色从文档(swagger ui)中隐藏一些 API。我的意思是想我有/employee/admin两个API所以每当管理员登录招摇UI或招摇文档,以便既/employee/adminAPI应该在页面上显示,如果员工登录招摇的用户界面,那么它应该只显示/employeeAPI。

dhj*_*dhj 4

您可以通过省略配置中的 ['tag'] 值来隐藏路由,但如果不进行大量修改,则无法将其应用于基于用户的角色。该文档是在服务器启动时生成的,而不是即时生成的,这就是为什么您需要重新加载服务器以反映更改的原因。

我有一个类似的用例,最后我认为为两个不同的服务(在您的案例中为员工和管理员)使用不同的端点更有意义。因此,也许像 api.domain.com/internal 和 api.domain.com/external 这样的东西,如果需要的话,可以轻松地围绕其中任何一个进行身份验证。如果您想要授予开发人员在一个 API 组上工作的权限,而不是同时开放对两个 API 组的访问权限,那么它也会带来优势。