Разные Swaggers UI? Как показать кнопку авторизации? - PullRequest
0 голосов
/ 13 мая 2018

Я использовал http://editor.swagger.io для создания swagger.yaml для моего приложения web.api (узел js). Но я был смущен, когда увидел чванство с моими методами. Кнопка авторизации была скрыта. Но в редакторе это было показано и работает. Разница такова:

  1. В редакторе все в порядке: enter image description here

  2. Но когда я вставляю тот же файл swagger.yaml в свое приложение, запускаю браузер и вижу другое представление: enter image description here

Ответы [ 2 ]

0 голосов
/ 13 мая 2018

Вы используете очень старую версию Swagger UI (2.0?), Тогда как Swagger Editor использует UI 3.x.

В UI 2.x вы можете ввести ключ API в текстовое полев шапке:

API keys in Swagger UI 2.x

Обратите внимание, что UI 2.x больше не поддерживается разработчиками.Попробуйте вместо этого использовать последнюю версию Swagger UI.

0 голосов
/ 13 мая 2018

У меня была такая же проблема. К сожалению, я не помню точное решение.
Но я помню, что-то было с ошибкой (в swaggerui) и определениями безопасности ( type = basic должен присутствовать, чтобы показать кнопку или что-то ... ).

Это из моего swagger.json (и показана кнопка авторизации):

<!-- snip -->

"/xx/xxx/xxx" : {
   "post" : {
      "responses" : {... },
      "security" : [ {
         "demouser" : [ ]
      }, {
         "api_key" : [ ]
      } ]
   }
 }

<!-- snip -->

"securityDefinitions" : {
   "api_key" : {
      "type" : "apiKey",
      "name" : "api_key",
      "in" : "header"
   },
   "demouser" : {
      "type" : "basic"
   }
}

Изменить информацию:
Вам также следует взглянуть на OpenAPI (swagger 3.0 ?!). У него намного более чистая спецификация и API! (swaggerui также поддерживает OpenAPI / Swagger3!)

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