【问题标题】:Springfox class Parameter is deprecatedSpringfox 类参数已弃用
【发布时间】:2021-01-06 15:00:41
【问题描述】:

在 Springfox 3.0 中,springfox.documentation.service.Parameter 已弃用。

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

以及如何提供其default 值?

【问题讨论】:

    标签: swagger springfox


    【解决方案1】:

    首先,使用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();
    

    【讨论】:

      【解决方案2】:
      @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);
      }
      

      【讨论】:

        猜你喜欢
        • 2013-12-12
        • 1970-01-01
        • 1970-01-01
        • 2023-01-23
        • 2011-12-28
        • 1970-01-01
        • 1970-01-01
        • 2022-08-22
        • 2016-08-03
        相关资源
        最近更新 更多