拨开荷叶行,寻梦已然成。仙女莲花里,翩翩白鹭情。
IMG-LOGO
主页 文章列表 在Spring Boot中从Swagger文档中隐藏端点

在Spring Boot中从Swagger文档中隐藏端点

白鹭 - 2021-11-24 553 0 0

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

 }

注意,**我们需要将hidden属性true**以使Swagger忽略此端点。

@ApiIgnore隐藏所有端点

尽管如此,有时我们还是需要隐藏控制器类的所有端点@ApiIgnore注释控制器类来实现此目的:

@ApiIgnore

 @RestController

 public class RegularRestController {

 // regular code

 }

要注意的是,这将从文档中隐藏控制器本身。

6.使用@Hidden

如果使用的是OpenAPI v3,则可以使用@Hidden注释隐藏端点:

@Hidden

 @GetMapping("/getAuthor")

 public String getAuthor() {

 return "Umang Budhwar";

 }

@Hidden隐藏所有端点

同样,我们可以使用@Hidden注释控制器以隐藏所有端点:

@Hidden

 @RestController

 public class RegularRestController {

 // regular code

 }

这还将在文档中隐藏控制器。

注意:我们仅在使用@Hidden时才能使用@Hidden。 Swagger v3中对该注释的支持仍在进行中。

8.结论

在本教程中,我们已经了解了如何从Swagger文档中隐藏端点。我们讨论了如何隐藏单个端点以及控制器类的所有端点。

标签:

0 评论

发表评论

您的电子邮件地址不会被公开。 必填的字段已做标记 *