设置自定义的header参数,并要求使用人在测试接口时必须填写相应参数。
@Bean
public Docket docketBean() {
//指定使用Swagger2规范
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(new ApiInfoBuilder()
//描述字段支持Markdown语法
.description(this.applicationName+"的接口文档")
.contact(new Contact("二饭","https://gitee.com/StandFast","1786705138@qq.com"))
.version("1.0")
.build())
.groupName(applicationName)
.select()
.apis(RequestHandlerSelectors.basePackage("cn.tworice")) // 指定接口扫描包路径
.paths(PathSelectors.any())
.build().globalRequestParameters(globalRequestParameters());
}
public List<RequestParameter> globalRequestParameters() {
RequestParameter token = new RequestParameterBuilder()
.name("token") // 设置header名称
.in(ParameterType.HEADER) // 设置参数放在哪个地方,这里是header
.required(true) // 设置是否必须传
.build();
RequestParameter adminID = new RequestParameterBuilder()
.name("adminID") // 设置header名称
.in(ParameterType.HEADER) // 设置参数放在哪个地方,这里是header
.required(true) // 设置是否必须传
.build();
List<RequestParameter> parameters = new ArrayList<>();
parameters.add(token);
parameters.add(adminID);
return parameters;
}