Перейти к основному содержимому

Скрытие конечных точек из документации Swagger в Spring Boot

· 2 мин. чтения

Задача: Наибольшая подстрока без повторений

Для заданной строки s, найдите длину наибольшей подстроки без повторяющихся символов. Подстрока — это непрерывная непустая последовательность символов внутри строки...

ANDROMEDA 42

1. Обзор

При создании документации Swagger нам часто приходится скрывать конечные точки от конечных пользователей. Чаще всего это делается, когда конечная точка еще не готова. Кроме того, у нас могут быть некоторые частные конечные точки, которые мы не хотим раскрывать.

В этой короткой статье мы рассмотрим, как мы можем скрыть конечные точки из документации Swagger API . Для этого мы будем использовать аннотации в нашем классе контроллера.

2. Скрытие конечной точки с помощью @ApiIgnore

Аннотация @ApiIgnore позволяет скрыть конечную точку . Давайте добавим эту аннотацию для конечной точки в наш контроллер:

@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();
}

Обратите внимание, что нам нужно установить для скрытого свойства значение true , чтобы Swagger игнорировал эту конечную точку.

4. Скрытие всех конечных точек с помощью @ApiIgnore

Тем не менее, иногда нам нужно скрыть все конечные точки класса контроллера . Мы можем добиться этого, аннотировав класс контроллера с помощью @ApiIgnore :

@ApiIgnore
@RestController
public class RegularRestController {
// regular code
}

Следует отметить, что это скроет сам контроллер из документации.

6. Скрытие конечной точки с помощью @Hidden

Если мы используем OpenAPI v3 , мы можем скрыть конечную точку с помощью аннотации @Hidden :

@Hidden
@GetMapping("/getAuthor")
public String getAuthor() {
return "Umang Budhwar";
}

7. Скрытие всех конечных точек с помощью @Hidden

Точно так же мы можем аннотировать контроллер с помощью @Hidden , чтобы скрыть все конечные точки:

@Hidden
@RestController
public class RegularRestController {
// regular code
}

Это также скроет контроллер из документации.

Примечание. Мы можем использовать @Hidden только при использовании OpenAPI. Поддержка этой аннотации в Swagger v3 все еще продолжается.

8. Заключение

В этом руководстве мы увидели, как мы можем скрыть конечные точки из документации Swagger. Мы обсудили, как скрыть одну конечную точку, а также все конечные точки класса контроллера.

Как всегда, полный код примеров Swagger доступен на GitHub , а примеры OpenAPI v3 также доступны на GitHub .