在Spring Boot中從Swagger文檔中隱藏端點
瀏覽人數:1,433最近更新:
- Spring Boot
- Swagger
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文檔中隱藏端點。我們討論瞭如何隱藏單個端點以及控制器類的所有端點。
本作品係原創或者翻譯,採用《署名-非商業性使用-禁止演繹4.0國際》許可協議