我需要在 Swagger UI 之前添加一个单独的登录页面,以便从另一台服务器进行身份验证。从这个请求中,我将获得一个 key ,我必须将其添加到来自 swagger UI 的每个请求的 header 中。
我正在使用节点服务器和带有 swagger 2.0 的 swagger-tool。
最佳答案
如果您使用 nginx,您可以添加基本的 HTTP 身份验证。然后,任何人只要访问您的文档网址或子域,他们就会在访问 swagger-ui 之前看到一个弹出的用户/密码对话框。
Full instructions用于创建用户/密码组合(假设是 Ubuntu):
sudo apt-get install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd exampleuser
该工具将提示您输入密码。
然后更新您的 nginx 文件,为文档路由添加类似以下内容:
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
关于swagger - 是否可以在 Swagger ui 之前添加登录页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34648234/