SpringBoot在生產(chǎn)快速禁用Swagger2的方法步驟
你還在生產(chǎn)節(jié)點開放Swagger嗎,趕緊停止這種暴露接口的行為吧。
學(xué)習(xí)目標(biāo)
快速學(xué)會使用注解關(guān)閉Swagger2,避免接口重復(fù)暴露。
使用教程
禁用方法1:使用注解@Profile({"dev","test"})
表示在開發(fā)或測試環(huán)境開啟,而在生產(chǎn)關(guān)閉。(推薦使用)
禁用方法2:使用注解@ConditionalOnProperty(name = "swagger.enable", havingValue = "true")
然后在測試配置或者開發(fā)配置中 添加 swagger.enable = true 即可開啟,生產(chǎn)環(huán)境不填則默認(rèn)關(guān)閉Swagger.
例如:
/** * Swagger2 接口配置 */ @Configuration @EnableSwagger2 //@Profile({"dev","test"}) @ConditionalOnProperty(name = "swagger.enable", havingValue = "true") public class Swagger2Config { /** * 添加摘要信息(Docket) */ @Bean public Docket controllerApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(new ApiInfoBuilder() .title("標(biāo)題:某公司_用戶信息管理系統(tǒng)_接口文檔") .description("描述:用于管理集團旗下公司的人員信息,具體包括XXX,XXX模塊...") .contact(new Contact("Socks", null, null)) .version("版本號:1.0") .build()) .select() .apis(RequestHandlerSelectors.basePackage("com.hehe.controller")) .paths(PathSelectors.any()) .build(); } }
訪問效果:
開發(fā)環(huán)境:http://localhost:8081/swagger-ui.html 正常訪問Swagger。
生產(chǎn)環(huán)境:http://localhost:8082/swagger-ui.html 已經(jīng)禁用Swagger。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
IDEA創(chuàng)建Maven項目一直顯示正在加載的問題及解決
這篇文章主要介紹了IDEA創(chuàng)建Maven項目一直顯示正在加載的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12最詳細(xì)的Java循環(huán)結(jié)構(gòu)解析之for循環(huán)教程(適合小白)
:循環(huán)結(jié)構(gòu)是指在程序中需要反復(fù)執(zhí)行某個功能而設(shè)置的一種程序結(jié)構(gòu),下面這篇文章主要給大家介紹了關(guān)于Java循環(huán)結(jié)構(gòu)解析之for循環(huán)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-09-09SpringBoot結(jié)合Mybatis實現(xiàn)創(chuàng)建數(shù)據(jù)庫表的方法
本文主要介紹了SpringBoot結(jié)合Mybatis實現(xiàn)創(chuàng)建數(shù)據(jù)庫表的方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01JAVA匿名內(nèi)部類(Anonymous Classes)的具體使用
本文主要介紹了JAVA匿名內(nèi)部類,匿名內(nèi)部類在我們JAVA程序員的日常工作中經(jīng)常要用到,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08