Elasticsearch java验证api

bab*_*her 6 java elasticsearch

我想在保存之前验证查询以供日后使用.我看到ES有一个验证API,但是它无法看到将它与Java API一起使用的方法.

有没有办法使用java api验证ES查询?

也许我可以在保存之前运行查询?

bab*_*her 2

所以在查看了elasticsearch源代码之后我想出了这个解决方案。

public ActionFuture<ValidateQueryResponse> validateAsync(QueryBuilder query, String[] indices) {
    final ValidateQueryRequest request = new ValidateQueryRequest();
    request.indices(indices);
    request.source(query.buildAsBytes());
    return esClient.admin().indices().validateQuery(request);
}
Run Code Online (Sandbox Code Playgroud)