Springfox class 参数已弃用
Springfox class Parameter is deprecated
在 Springfox 3.0 中,springfox.documentation.service.Parameter
已弃用。
是否有更新的方法来提供参数及其构建器?
以及如何提供其default
值?
首先,使用 RequestParameter
在 Docket bean 中指定 Parameter
。
供其构建器使用 RequestParameterBuilder
class
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);
}
当您设置 required=true 时,swagger ui 似乎不起作用。如果您将字段留空并单击提交而不是字段闪烁红色,页面会变得繁忙并且微调器永远旋转而不会发送任何内容
在 Springfox 3.0 中,springfox.documentation.service.Parameter
已弃用。
是否有更新的方法来提供参数及其构建器?
以及如何提供其default
值?
首先,使用 RequestParameter
在 Docket bean 中指定 Parameter
。
供其构建器使用 RequestParameterBuilder
class
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);
}
当您设置 required=true 时,swagger ui 似乎不起作用。如果您将字段留空并单击提交而不是字段闪烁红色,页面会变得繁忙并且微调器永远旋转而不会发送任何内容