当前位置: 首页 > 知识库问答 >
问题:

Swagger用相同的路径和方法但不同的参数覆盖方法

齐凯康
2023-03-14

Swagger用相同的路径和方法但不同的参数覆盖方法

我有一个带有Spring Boot 2.3.5.RELEASE,webflux和springfox 3.0.0的应用程序。我开发了两个具有相同路径但参数不同的GET方法,一个不接收参数并返回list,另一个返回findAll。

情况是,Swagger只生成其中一种方法的文档,有时是列表,有时是分页。我怎么能告诉swagger他们是不同的方法,并为我记录两者?

@GetMapping(value = "/foo", params = {"page", "size"})
@ResponseBody
public Mono<ResponseEntity<Mono<Page<FooDTO>>>> findByFilter(FooFilterDTO filter,
        @SortDefault(sort = "id", direction = Sort.Direction.DESC) @PageableDefault(value = 10) Pageable pageable) {
//...
}

@GetMapping(value = "/foo")
@ResponseBody
public Mono<ResponseEntity<Flux<FooDTO>>> findAll() {
//...
}

我的招摇过市配置:

@Configuration
@EnableSwagger2
public class SwaggerConfig {

    @Value("${app.version}")
    private String version;
    
    @Bean
    public Docket docketUsersV1() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(this.fooApiInfo())
                .enable(true)
                .groupName("foo-api")
                .securityContexts(Arrays.asList(securityContext()))
                .securitySchemes(Arrays.asList(apiKey()))
                .select()
                .paths(fooPaths())
                .build();
    }
    
    private ApiInfo fooApiInfo() {
        return new ApiInfoBuilder()
                .title("Reactive Foo")
                .description("Reactive API")
                .version(appVersion)
                .build();
    }

    
    private Predicate<String> fooPaths() {
        return regex("/foo.*");
    }
}

暂时还没有答案

 类似资料:
  • 问题内容: 我刚刚注意到,覆盖方法的行为与覆盖字段的行为不同。考虑以下代码段: 结果为: 1 值v为4 因此,似乎bar中的方法printV被foo.printV覆盖,而字段v中的方法并未被bar覆盖。有人知道这种差异的原因吗? 谢谢。 问题答案: 我刚刚注意到,覆盖方法的行为与覆盖字段的行为不同。 没有“覆盖字段”之类的东西。您可以 阴影 字段,但不能覆盖它们。字段不是多态的。有关更多详细信息,

  • 我在Java中有两个几乎相同的方法。唯一的区别是它们有不同的参数类型。它们使用泛型并返回输入参数的类型T。我怎样才能摆脱重复的代码?下面是我的两个方法。最后,它们都使用不同的类型调用Spring。否则,方法是相同的。

  • 当前我的控制器看起来是这样的。 有没有更简单的方法为两个不同的路径“localhost:port/members”和“localhost:port/members/index”使用一个index-method?一般情况下,我可以为一个方法注释两个值吗? 提前致谢:) 编辑:我已经看到它对@RequestMapping起作用了

  • 我的两个方法中的操作是相同的,但是输入参数类型不同,那么我该如何优化这两个方法,似乎没有那么重复?因为它们的操作是相同的,但参数类型不同,我该怎么做才能使这段代码更优雅呢?

  • 问题内容: 当与MySQL数据库连接时,我有几种方法可以做同样的事情,保存或加载不同类型的参数。目前,我对每种类型都有不同的方法。如何合并这些方法,以便它们支持不同的类型? 下面是两个非常相似但使用不同类型的方法的示例: 请注意,在该示例中,类型均为数字。在类型完全不同的情况下(例如int和String),如何避免使用近乎重复的方法? 问题答案: 您可以在此处应用 策略 模式。 …

  • B类: 如何影响这个界面?