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

此代码片段列出了所有 Spring Boot 健康端点以招摇文档。我只想显示 Http GET 方法。有人对此有任何想法吗?

4

2 回答 2

1

您将创建基于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())
 //...
于 2015-12-09T02:17:09.590 回答
1

当前input.getRequestMapping()方法已被弃用,它在 RequestHandler 中仅用于legay目的。取而代之的是,您可以使用:

 private Predicate<RequestHandler> onlyGets() {
    return new Predicate<RequestHandler>() {
          @Override
          public boolean apply(RequestHandler input) {
             return input.supportedMethods()
                    .contains(RequestMethod.GET);
      }
    };
 }
于 2017-02-15T13:51:13.287 回答