Когда я добавляю Схему безопасности в качестве JWT в своем определении OpenAPI, функция «Попробуйте это» в пользовательском интерфейсе всегда возвращает 401: Несанкционированная ошибка - PullRequest
0 голосов
/ 20 июня 2019

У меня есть следующее базовое определение openAPI:

openapi: "3.0.0"

info:
  description: >-
    API which tests service
  version: "1.0"
  title: Test Service

servers:
  - url: /
    description: Localhost Server

security:
  - bearerAuth: []

paths:
  /test:
    get:
      operationId: app.test
      responses:
        200:
          description: Test
          content:
            text/plain:
              schema:
                type: string

components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

В пользовательском интерфейсе Swagger отображается опция «Авторизация», в которой я помещаю токен JWT без ключевого слова «Носитель» и нажимаю «Попробовать». Ответ:

{
  "detail": "No authorization token provided",
  "status": 401,
  "title": "Unauthorized",
  "type": "about:blank"
}

Команда curl имеет правильный заголовок авторизации, который также не работает, если я выполняю его в терминале.

Однако, если я удалю тег security из определения OpenAPI, сработает команда "Попробуйте", а также команда curl.

Кто-нибудь знает, в чем может быть проблема? Какова правильная команда curl при использовании Схемы безопасности JWT в OpenAPI?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...