spring-mvc - 如何基于http方法隐藏相关端点

标签 spring-mvc spring-boot swagger-2.0 spring-boot-actuator springfox

    private Predicate<String> aggregationPaths() {
        return or(regex("/aggregationservice.*"),regex("/health"));
     }

此代码片段列出了 swagger 文档的所有 Spring Boot 运行状况端点。我只想显示 Http GET 方法。有人对此有任何想法吗?

最佳答案

您将创建基于 RequestHandler 的谓词

 private Predicate<RequestHandler> onlyGets() {
    return new Predicate<RequestHandler>() {
          @Override
          public boolean apply(RequestHandler input) {
             return input.getRequestMapping()
                    .getMethodsCondition()
                    .getMethods()
                    .contains(RequestMethod.GET);
      }
    };
 }

并在您的 API 选择器中为您的摘要添加谓词

 //....
 new Docket().select().apis(onlyGets())
 //...

关于spring-mvc - 如何基于http方法隐藏相关端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34154958/

相关文章:

java - Spring MVC @Autowire 不工作 - 循环依赖?

java - 如何理解 Spring @ComponentScan

java - SpringBootTest : No qualifying bean of type 'org.springframework.test.web.servlet.MockMvc' available:

rest - 内部错误 (500) 是否应该成为 Swagger API 文档的一部分?

go - 无法使用swagger.yaml的应用程序启动swagger ui

java - 未能延迟初始化角色 [] 的集合,无法初始化代理 - 无 session

json - 在Spring MVC中使用curl将字符串值数组作为请求主体发布

spring-boot - 突然Springfox Swagger 3.0无法与Spring Webflux一起使用

spring-boot - 在类路径上检测到 2 个 Spring WebApplicationInitializers

swagger - 如何在 OpenAPI 2.0 中定义混合类型数组(具有不同元素类型)?