У меня есть следующее базовое определение 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?