swagger添加访问密码
短信预约 -IT技能 免费直播动态提醒
swagger现在是很普遍使用的接口文档。
但当项目发布到正式环境之后,swagger暴露给外部是很致命的,因此可以使用添加用户密码访问
(也可以设置swagger隐藏,利用@Profile对不同环境做不同操作,选择展示或者隐藏)
先展示实现效果
接下来展示实现代码pom文件引入所需依赖
io.springfox springfox-swagger2 ${swagger.version} com.github.xiaoymin swagger-bootstrap-ui 1.9.4
展示application.yml文件内需要添加的内容
切记swagger.production 不可设置为true,否则将屏蔽所有资源
swagger: production: false basic: enable: true username: root password: test
swagger配置文件
import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import springfox.documentation.builders.ApiInfoBuilder;import springfox.documentation.builders.PathSelectors;import springfox.documentation.builders.RequestHandlerSelectors;import springfox.documentation.service.ApiInfo;import springfox.documentation.spi.DocumentationType;import springfox.documentation.spring.web.plugins.Docket;import springfox.documentation.swagger2.annotations.EnableSwagger2;@EnableSwaggerBootstrapUI//(该注解swagger需要配置登录用户和密码才需要)@Configuration@EnableSwagger2public class SwaggerConfiguration { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo())// .enable(isEnable) .select() .apis(RequestHandlerSelectors.basePackage("com.test.api")) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("后台管理系统API") .termsOfServiceUrl("http://localhost:8899/") .version("1.0") .build(); }}
@EnableSwaggerBootstrapUI该注解正常使用swagger无需添加,需要用到登录访问时再添加。
以上就完成了。
来源地址:https://blog.csdn.net/qq_36090537/article/details/127789962
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341