0

I need to add a global header with default value, and the header parameter should to hidden. Is there anyone can give my some advice?

This is my code.

@Bean
public Docket createRestApi() {
    // @formatter:off
    return new Docket(DocumentationType.OAS_30).apiInfo(apiInfo()).select()
        //为当前包路径
        .apis(RequestHandlerSelectors.basePackage("com.zmj"))
        .paths(PathSelectors.any())
        .build()
        .globalRequestParameters(Collections.singletonList(platformHeaderParameter()))
        ;
    // @formatter:on
}

private RequestParameter platformHeaderParameter() {
    return new RequestParameterBuilder().name("platform").description("来源").in(ParameterType.HEADER).hidden(true)
        .parameterSpecificationProvider(new HeaderParameterSpecificationProvider()).query(
            builder -> builder.defaultValue("swagger")
                .model(modelSpecificationBuilder -> modelSpecificationBuilder.name("swagger2")
                    .scalarModel(ScalarType.STRING)
                    .facets(modelFacetsBuilder -> modelFacetsBuilder.title("swagger3")))).build();
}

1 Answers1

0

I think,there is a bug,if you change DocumentationType,You will see default value

DocumentationType.OAS_30

to

DocumentationType.SWAGGER_2

Onur Ozdemir
  • 86
  • 1
  • 4