目前,我有一个过程,用户可以通过该过程来获取JSON Web令牌(JWT)。然后,使用此JWT为API的所有http请求设置X-Access-Token标头。我在弄清楚如何做到这一点时遇到了麻烦。
我相信可以添加到api_definition.yaml,以便用户可以输入其JWT的字段出现,然后可以将其添加为所有调用的标头。

解决方案尝试
我在api_definition.yaml中添加了以下内容

securityDefinitions:
  UserSecurity:
    type: apiKey
    in: header
    name: X-Access-Token

security: [ { jwt: [] } ]
这似乎并没有改变Swagger-UI中的任何内容,我也不完全确定如何制作它以便用户可以输入其键?

最佳答案

security密钥中的安全方案名称必须与securityDefinitions中使用的名称匹配:

securityDefinitions:
  UserSecurity:
    type: apiKey
    in: header
    name: X-Access-Token

security:
  - UserSecurity: []

然后,您应该在Swagger UI标头中看到授权按钮。

关于jwt - Swagger UI身份验证 header ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43234670/

10-10 18:31
查看更多