Можно ли указать клиентскую библиотеку, используя swagger codegen? - PullRequest
0 голосов
/ 15 марта 2019

При генерации клиента на основе метаданных Swagger, возможно ли как-то указать или настроить параметры, чтобы выходные данные использовали какую-то другую клиентскую библиотеку?

Так что, если это, например, клиент C #, автоматически заменить клиент HttpClient или RestSharp (я не помню, какой он сейчас, поскольку я не использовал его некоторое время) с какой-то настраиваемой библиотекой?

1 Ответ

1 голос
/ 15 марта 2019

Да, это возможно,

Codegen использует шаблоны и конфигурационные Java-классы для генерации кода на разных языках. Если вы хотите изменить эти шаблоны и классы, это будет довольно простая модификация.

Вы можете найти репозиторий с открытым исходным кодом здесь Swagger-Codegen

Файлы шаблонов для каждого языка можно найти здесь:

https://github.com/swagger-api/swagger-codegen/tree/master/modules/swagger-codegen/src/main/resources

Классы конфигурации Java:

https://github.com/swagger-api/swagger-codegen/tree/master/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages

Список переменных шаблона:

https://github.com/swagger-api/swagger-codegen/wiki/Mustache-Template-Variables

Шаблон написан на усах: https://mustache.github.io/mustache.5.html

Интересное чтиво, если вы хотите начать с нуля:

https://github.com/swagger-api/swagger-codegen/wiki/How-to-add-a-generator-for-a-new-language-or-framework

...