【问题标题】:How to hide only one mapping from swagger ui documentation if I more than one mapping for method in Spring boot如果我在 Spring boot 中使用多个方法映射,如何仅从 swagger ui 文档中隐藏一个映射
【发布时间】:2021-06-29 01:55:41
【问题描述】:

我有一个映射到多个映射的弹簧引导休息控制器方法。请在下面找到示例代码。

@RestController
public class HomeController {

    @RequestMapping( {"/", "/home"} )
    public String home() {
        return "Hello, World!";
    }

}

我想从 swagger 文档中隐藏 /home 映射。

谁能帮我实现这个目标。

【问题讨论】:

    标签: java spring-boot swagger swagger-ui swagger-2.0


    【解决方案1】:

    我还搜索了一种方法来隐藏多个映射方法中的某些 URL。不幸的是,我认为多重映射不可能像这样定义 @RequestMapping( {url1, url2} )

    有两种替代方法:

    1. 将您的方法拆分为 2 个调用相同函数的方法,并使用 @Operation(hidden=true) 注释您要隐藏的方法

    2. 在您的 swagger 配置中定义异常(对于使用开放 API 的 swagger 3):

       @Configuration
       public class SwaggerConfig {
      
           @Bean
           public GroupedOpenApi myApi()
           {
               return GroupedOpenApi.builder()
                   .pathsToMatch("/**")
                   .pathsToExclude("/home")
                   .build();
           }
       }
      

    【讨论】:

      猜你喜欢
      • 2019-04-26
      • 1970-01-01
      • 2016-06-30
      • 2016-12-08
      • 2017-10-12
      • 1970-01-01
      • 2015-06-20
      • 2022-01-02
      • 1970-01-01
      相关资源
      最近更新 更多