🐸

OpenAPI - спецификация, устанавливающая способ описания REST API. Swagger - туллинг вокруг OpenAPI, генерирующий html-странички, позволяющие изучать REST API в интерактивной форме.

Существует 2 способа работы с OpenAPI:

  1. Создание OpenAPI на основе написанных спринговых контроллеров
  2. Генерация java-кода на основе написанного openapi.yml с последующей доработкой напильником. У многих есть опыт работы с OpenAPI по варианту 1. С вариантом 2 никто вживую не сталкивался (разве что Сергей, но это не точно).

Для работы по варианту 1 существует две библиотеки:

  • Springfox - весьма популярная в прошлом библиотека. Перестала поддерживаться и не работает с новыми версиями Spring Boot.
  • Springdoc - набирающая популярность библиотека

Для того чтобы представить свой REST API, как конфетку, существует несколько сервисов:

  • Swagger - работает из коробки при использовании любой из вышеперечисленных библиотек
  • Redoc - симпатичное трехколоночное представление, но в бесплатной версии отсутствует возможность отправки запросов на сервер
  • RapiDoc - симпатичное представление с возможностью отправки запросов на сервер