[#] Как за 10 минут сделать клиент к HTTP API на Swagger
habrabot(difrex,1) — All
2017-12-25 14:00:07


![][1]


Когда нужно сделать несколько запросов к HTTP API, разработчик обычно берет свой привычный язык/фреймворк и быстро пишет аналог **curl** в коде: HTTP-запрос, минимальный контроль ошибок, query- или json-аргументы, парсинг json body с названиями полей в виде строк. Все это замечательно работает, пока проект не начинает расти и несколько вызовов не превращаются в несколько десятков, а куски низкоуровневого кода не начинают размножаться копипастой. А дальше — стандартный набор багов, рожденных копипастой, которые начинают понемногу есть время у разработчика.

[Swagger/OpenAPI][2] — один из «комбайнов» для работы с HTTP API. Это язык описания API (недавно произошло объединение проектов генератора и спеки), генераторы серверного и клиентского кода, документации, тестов — много всяких полезных штук. Под катом я покажу, как по «человеческому» описанию API на сайте компании в несколько строк кода составить OpenAPI-описание и сгенерировать клиент на Python. И чем такой клиент будет лучше, чем вручную написанный код.
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/rx/oo/dk/rxoodkkmw-pkzgffxidjs-f55ag.png
[2]: https://swagger.io/
[3]: https://habrahabr.ru/post/345148/?utm_source=habrahabr&utm_medium=rss&utm_campaign=345148#habracut