我正在尝试将swagger ui集成到angular 7应用程序中。我使用的是npm的swagger-ui 3.37。API使用的是swagger 2.0 for docs. for。在API中没有启用授权的情况下,它也能正常工作。一旦在API端启用了授权,我希望通过代码添加授权令牌,这样用户就不必为每个端点手动输入授权密钥。
我已经在我的组件文件中添加了下面的代码。但是它仍然不起作用。
onComplete:
function() {
swaggerui.preauthorizeApiKey("Authorization", usertoken);
}
授权字段仍然显示为空,每次都需要手动输入。我想通过代码设置授权密钥,该密钥可应用于所有端点,还想隐藏“授权”按钮
能帮上忙就好了。
编辑:安全性定义:
"securityDefinitions": {
"Authorization": {
"type": "apiKey",
"description": "Filling bearer token here",
"name": "Bearer",
"in": "header"
}
}
swagger ui授权仍为空
1条答案
按热度按时间eyh26e7m1#
我无法通过API上的swagger配置以及swagger ui构造函数中传递的配置来实现此功能。不知道为什么。
但我可以通过在TryOut按钮上添加一个hack来使其工作。在swagger ui构造函数的onComplete处理程序中,我添加了一个文档侦听器事件并捕获了Tryout点击事件,在Authorization文本框中添加了授权密钥,并将该事件冒泡为默认行为。这对我很有效。
希望这对像我一样固执己见的人有帮助