问题描述
需求
后台请求时需要head参数认证,所以需要在swagger的请求页面添加head参数单表
问题
找了一些网上swageer2设置head表单参数的代码如下,设置依旧没有head参数,这是因为使用的都是过期方法
。
解决方案
使用.globalRequestParameters(parameters)
设置参数,入参使用List<RequestParameter>
,下面章有完整代码
完整代码
@Configuration
@EnableOpenApi
public class WebMvcConfig implements WebMvcConfigurer {
@Bean
public Docket docket() {
List<RequestParameter> parameters = new ArrayList<>();
parameters.add(new RequestParameterBuilder()
.name("token")
.description("认证token")
.in(ParameterType.HEADER)
.required(false)
.build());
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.globalRequestParameters(parameters)
.select()
.apis(RequestHandlerSelectors.basePackage("com.test.controller"))
.build();
}
//作者信息
Contact contact = new Contact("test","","");
private ApiInfo apiInfo() {
return new ApiInfo("Api文档",
"api说明文档",
"1.0",
"",
contact,
"Apache 2.0",
"http://www.apache.org/licenses/LICENSE-2.0",
new ArrayList<>());
}
}