Swagger屏蔽某些接口显示
首先说下为什么要屏蔽,因为某些接口是针对内部服务调用的,不需要进行对接。显示出来的话:
1、容易混淆
2、容易暴露相关接口内容
其实屏蔽的话比较简单,主要是注解:
1
2
3
4
5
6
|
@ApiIgnore
@RequestMapping ( "/wx/back" )
@ApiIgnore
public String wxBack(HttpServletRequest request){
return payService.back(ParamUtil.getXmlString(request), "zjcOrderService" );
}
|
这样在Swagger上面就不会显示这个接口了
如果这个接口是在类上加的,整个类就不会显示了
Swagger Ui只显示部分接口
Swagger UI默认显示所有接口,连endpoint,jpa restful等接口也会显示
可以通过一下配置:
1
2
3
4
5
6
7
8
9
10
11
12
|
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api(){
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage( "包名" ))
.paths(PathSelectors.any())
.build();
}
}
|
配置上你controller的包路径,就会只显示你包下面的接口
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/zhuwei_clark/article/details/108243304