计算机系统应用教程网站

网站首页 > 技术文章 正文

SpringBoot 在生产快速禁用Swagger2

btikc 2024-09-14 00:44:59 技术文章 12 ℃ 0 评论

原文地址:https://dwz.cn/R1iAoB71

作者:yizhiwazi

你还在生产节点开放Swagger吗,赶紧停止这种暴露接口的行为吧。

学习目标

快速学会使用注解关闭Swagger2,避免接口重复暴露。

使用教程

禁用方法1:使用注解@Profile({"dev","test"}) 表示在开发或测试环境开启,而在生产关闭。(推荐使用)

禁用方法2:使用注解@ConditionalOnProperty(name = "swagger.enable", havingValue = "true") 然后在测试配置或者开发配置中 添加 swagger.enable = true 即可开启,生产环境不填则默认关闭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("标题:某公司_用户信息管理系统_接口文档")
 .description("描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...")
 .contact(new Contact("Socks", null, null))
 .version("版本号:1.0")
 .build())
 .select()
 .apis(RequestHandlerSelectors.basePackage("com.hehe.controller"))
 .paths(PathSelectors.any())
 .build();
 }
}

访问效果:

开发环境:http://localhost:8081/swagger-ui.html 正常访问Swagger。

生产环境:http://localhost:8082/swagger-ui.html 已经禁用Swagger。

"好用的框架随处可见,高效的整合万里挑一,关注作者,关注SpringBoot,让Java编程更简单!!"

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表