是否可以在Swagger ui之前添加登录页面?

问题描述 投票:3回答:1

我需要在Swagger UI之前添加一个单独的登录页面,以便从另一台服务器进行身份验证。从这个请求我将得到一个密钥,我必须在swagger UI的每个req的标题中添加。

我正在使用带有swagger 2.0的节点服务器和swagger-tool。

swagger swagger-ui swagger-2.0 swagger-editor swagger-node-express
1个回答
0
投票

如果您使用的是nginx,则可以添加基本的HTTP身份验证。然后,只要有人访问您的文档URL或子域,他们就会获得弹出式用户/密码对话框,然后才能访问swagger-ui。

Full instructions用于创建用户/密码组合(假设Ubuntu):

sudo apt-get install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd exampleuser

该工具将提示您输入密码。

然后更新你的nginx文件,为docs路由提供类似的东西:

location /docs {
   auth_basic "Restricted Content";
   auth_basic_user_file /etc/nginx/.htpasswd;
   proxy_pass http://0.0.0.0:3000;
 }

然后重新加载nginx:

sudo /etc/init.d/nginx reload
© www.soinside.com 2019 - 2024. All rights reserved.