我们正在使用SolrJ客户端从Solr查询文档。我们正在构建的查询很大,Solr拒绝了该查询(错误响应为 414 URI Too Long
)。
但是,我可以直接调用Solr的/query
端点,并使用POST请求将查询作为正文发布。有没有办法使用SolrJ客户端执行此操作?
最佳答案
您可以在带有QueryRequest的SolrJ中使用post方法,该方法具有用于设置HTTP方法的选项。
public QueryResponse query(SolrQuery parameters){
QueryResponse resp=null;
try {
QueryRequest queryRequest=new QueryRequest(parameters);
queryRequest.setMethod(SolrRequest.METHOD.POST);
NamedList nl=solrClient.request(queryRequest);
resp=new QueryResponse(nl, solrClient);
} catch (Exception e) {
e.printStackTrace();
}
return resp;
}