在hapi-swagger中,是否可以根据用户角色对文档(swagger ui)隐藏一些hapi。我的意思是假设我有/employee和/admin两个API,所以每当管理员登录到swagger ui或swagger文档时,/employee和/admin应用程序接口都应该显示在页面上,如果员工登录到swagger ui,那么它应该只显示/employee API。
发布于 2018-08-09 20:09:49
您可以通过在配置中省略'tag‘值来隐藏路由,但在没有大量返工的情况下,您不能在基于用户的角色上执行此操作。文档是在服务器启动时生成的,而不是动态生成的,这就是为什么您需要重新加载服务器以反映更改的原因。
我有一个类似的用例,最后我决定为两个不同的服务(在您的案例中是employee和admin)使用不同的端点更有意义。因此,可以使用像api.domain.com/internal和api.domain.com/external这样的内容,如果需要的话,可以很容易地将身份验证封装在这两种内容中的任何一种。如果您想要授予开发人员在一个API组上工作的访问权限,而不是同时开放两个API组的访问权限,那么它也会带来好处。
https://stackoverflow.com/questions/49682378
复制相似问题