example - Spring+Springfox+Parámetros del encabezado
taglib spring jsp (2)
Podría usar los globalOperationParameters
de globalOperationParameters
en la definición del expediente. Por ejemplo
new Docket(...)
.globalOperationParameters(
Arrays.asList(new ParameterBuilder()
.name("header")
.description("Description of header")
.modelRef(new ModelRef("string"))
.parameterType("header")
.required(true)
.build()))
Vea #22 en la documentación para más información.
@RequestMapping(...)
public Foo getFoo(@HeaderParam("header") final String header) {
...
}
Al agregar un parámetro del método @HeaderParam
como anteriormente, springfox lo recoge y cuando miro el swagger-ui tiene un campo para el encabezado. Esto es exactamente lo que quiero. ¿Hay alguna manera de que Springfox pueda incluir este parámetro de encabezado en un conjunto de métodos sin tener que incluir los parámetros en el método en sí? Lo que realmente estamos haciendo es un filtro de servlet que usa el encabezado y nos gustaría establecerlo fácilmente a través de swagger-ui.
Una respuesta más explicada para el mismo:
@Bean
public Docket api() {
//Adding Header
ParameterBuilder aParameterBuilder = new ParameterBuilder();
aParameterBuilder.name("headerName").modelRef(new ModelRef("string")).parameterType("header").required(true).build();
List<Parameter> aParameters = new ArrayList<Parameter>();
aParameters.add(aParameterBuilder.build());
return new Docket(DocumentationType.SWAGGER_2).select()
.apis(RequestHandlerSelectors.any()).paths(PathSelectors.any()).build().apiInfo(apiInfo()).pathMapping("").globalOperationParameters(aParameters);
}