不推荐使用Springfox类参数

问题描述

在Springfox 3.0中,不推荐使用springfox.documentation.service.Parameter

是否有更新的方法来提供参数及其构建器?

以及如何提供其default值?

解决方法

首先,使用RequestParameter在Docket bean中指定Parameter

为其构建器使用RequestParameterBuilder

RequestParameter可能看起来像这样。

private RequestParameter authorizationParameter() {
    RequestParameterBuilder tokenBuilder = new RequestParameterBuilder();
    tokenBuilder
            .name("Authorization")
            .description("access_token")
            .required(false)
            .in("header")
            .accepts(Collections.singleton(MediaType.APPLICATION_JSON))
            .build();
    return tokenBuilder.build();
,
@Bean
public Docket api() {
// Adding Header
RequestParameterBuilder aParameterBuilder = new RequestParameterBuilder();
aParameterBuilder.name("Cache-Control")
    .query(q -> q.defaultValue("no-cache,no-store")
        .model(modelSpecificationBuilder -> modelSpecificationBuilder.scalarModel(ScalarType.STRING)))
    .in(ParameterType.HEADER).required(true).build();

List<RequestParameter> aParameters = new ArrayList<>();
aParameters.add(aParameterBuilder.build());

return new Docket(DocumentationType.SWAGGER_2).select().apis(RequestHandlerSelectors.any())
    .paths(PathSelectors.regex("(?!/error.*).*")).build().apiInfo(metadata())
    .globalRequestParameters(aParameters);
}

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...