1. Обзор
При создании документации Swagger нам часто приходится скрывать конечные точки от доступа конечных пользователей. Наиболее распространенный сценарий – это когда конечная точка еще не готова. Кроме того, у нас могут быть некоторые частные конечные точки, которые мы не хотим раскрывать.
В этой короткой статье мы рассмотрим, как мы можем скрыть конечные точки из документации Swagger API . Для достижения этой цели мы будем использовать аннотации в нашем классе контроллера.
2. Скрытие конечной точки с помощью @ApiIgnore
Аннотация @Peignoir позволяет скрыть конечную точку . Давайте добавим эту аннотацию для конечной точки в нашем контроллере:
@ApiIgnore @ApiOperation(value = "This method is used to get the author name.") @GetMapping("/getAuthor") public String getAuthor() { return "Umang Budhwar"; }
3. Скрытие конечной точки с помощью @ApiOperation
В качестве альтернативы мы можем использовать @ApiOperation для скрытия одной конечной точки :
@ApiOperation(value = "This method is used to get the current date.", hidden = true) @GetMapping("/getDate") public LocalDate getDate() { return LocalDate.now(); }
Обратите внимание, что нам нужно установить для свойства hidden значение true , чтобы Swagger игнорировал эту конечную точку.
4. Скрытие всех конечных точек с помощью @ApiIgnore
Тем не менее, иногда нам нужно скрыть все конечные точки класса контроллера . Мы можем достичь этого, аннотируя класс контроллера с помощью @ApiIgnore :
@ApiIgnore @RestController public class RegularRestController { // regular code }
Следует отметить, что это скроет сам контроллер из документации.
6. Скрытие конечной точки с помощью @Hidden
Если мы используем Open API v3 , мы можем скрыть конечную точку с помощью аннотации @Hidden :
@Hidden @GetMapping("/getAuthor") public String getAuthor() { return "Umang Budhwar"; }
7. Скрытие всех конечных точек с помощью @Hidden
Аналогично, мы можем аннотировать контроллер с помощью @Hidden , чтобы скрыть все конечные точки:
@Hidden @RestController public class RegularRestController { // regular code }
Это также скроет контроллер из документации.
Примечание: Мы можем использовать только @Скрытый когда мы используем OpenAPI. Поддержка этой аннотации в Swagger v3 все еще продолжается.
8. Заключение
В этом уроке мы рассмотрели, как мы можем скрыть конечные точки из документации Swagger. Мы обсудили, как скрыть одну конечную точку, а также все конечные точки класса контроллера.
Как всегда, полный код для примеров Swagger доступен на GitHub , а также примеры Open API v3 доступны на GitHub .