需求
需要在http请求中的头部,添加一个变量CurTime
实现
在上篇的配置类上做一下修改
public class SwaggerConfig {
@Bean
public Docket testApi() {
/**
*
* 加上以下这一段
* 期间,参数名自己替换掉
*/
ParameterBuilder ticketPar = new ParameterBuilder();
List<Parameter> pars = new ArrayList<Parameter>();
ticketPar.name("CurTime").description("时间戳")
.modelRef(new ModelRef("string")).parameterType("header")
.required(false).build();
pars.add(ticketPar.build());
return new Docket(DocumentationType.SWAGGER_2)
.groupName("name")
.genericModelSubstitutes(DeferredResult.class)
.useDefaultResponseMessages(false)
.forCodeGeneration(true)
.pathMapping("/")// base,最终调用接口后会和paths拼接在一起
.select()//函数返回一个 ApiSelectorBuilder 实例用来控制哪些接口暴露给Swagger2来展现
.apis(RequestHandlerSelectors.basePackage("connet.controller"))//对api进行监控范围
.paths(PathSelectors.any())//过滤的接口 对所有路径进行监控
.build()
.apiInfo(testApiInfo())
/**
*
* 将上面配置的参数添加到配置中
*
*/
.globalOperationParameters(pars) ;
}
private ApiInfo testApiInfo() {
ApiInfo apiInfo = new ApiInfo(
"大标题",//大标题
"描述",//描述
"版本",//版本
"条款地址",//条款地址
"联系",//联系
"链接显示文字",//链接显示文字
"网站链接/"//网站链接
);
return apiInfo;
}
}
效果
然后就可以在后台拿到头部参数了
String CurTime = request.getHeader("CurTime");