Создание клиента API с помощью Swagger OpenAPI 3 с учетными данными клиента OAuth2 - PullRequest
0 голосов
/ 18 февраля 2019

Я использую версию Swagger OpenAPI 3.0.2 для описания моего API.

Я создал снимок swagger-codegen 3.0.5 из репозитория Swagger gihub.

Я хочу клиент Javaкоторый получит маркер OAUTH2 для типа предоставления client_credentials.Мне нужны учетные данные клиента, потому что это одна машина, разговаривающая с другой, я не спрашиваю у пользователя их учетные данные.У меня есть следующий бит в моем spec-файле:

securitySchemes: oAuth2ClientCredentials: type: oauth2 description: Standard OAUTH2 flows: clientCredentials: tokenUrl: my_token_url scopes: {} security: - oAuth2ClientCredentials: []

Мне нужен заголовок Basic Authentication с идентификатором клиента и секретом клиента в стандартной кодировке base64 с grant_type в качестве URLзакодированная форма.Это довольно стандартная аутентификация OAuth2.

Кажется, иногда я получаю код для аутентификации OAuth, а иногда нет.В библиотеке python нет ничего для OAuth, кроме меня, чтобы доказать токен доступа вручную.В библиотеке Java ее нет, если только я не запрашиваю модернизацию в качестве базовой библиотеки, но она генерирует заголовок аутентификации на носителе, а не заголовок базовой аутентификации.Retrofit2 даже не работает, в шаблоне руля есть недопустимый символ, который включает в себя рули.

Итак, что люди делают, чтобы получить свои токены доступа, когда у них есть идентификатор клиента и секрет клиента?Вы создаете код, чтобы получить токен доступа самостоятельно?Или есть какой-то волшебный способ получения swagger-codegen-cli для генерации кода для меня, в зависимости от библиотек, которые я использую?

Если кому-то удалось получить swagger-codegen-cli для генерации всего, что им нужнодля учетных данных клиента OAuth 2 со спецификацией OpenAPI 3.0, пожалуйста, дайте мне знать.

...