Swagger UI 身份验证 Header

Swagger UI Authentication Header

目前我有一个流程,用户可以通过该流程获取 JSON Web 令牌 (JWT)。然后使用此 JWT 将所有 http 请求的 X-Access-Token header 设置为 API。我不知道该怎么做。

我相信可以添加到 api_definition.yaml 以便出现一个字段,用户可以在其中输入他们的 JWT,然后可以将其作为 header 添加到所有调用中。


解决方案尝试

我将以下内容添加到 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 中看到 Authorize 按钮 UI header.