我有一个弹性搜索搜索查询,它以分页方式获取文档,如下所示:
{
"from" : 5, "size" : 2,
"sort" : [
{ "title" : {"order" : "asc"}}
],
"query" : {
"match_all": {}
},
"_source": ["title"]
}
我希望将from
和size
返回到ES的响应中,该响应当前不会从上述查询返回。
任何指针都会非常有用。
答案 0 :(得分:1)
ES当前未返回请求中已发送的分页参数。您需要破解它...或提交feature request
您可以使用named queries在几乎所有查询中传递该信息,但是,您需要等到ES match_all
支持命名查询:
{
"from" : 5, "size" : 2,
"sort" : [
{ "title" : {"order" : "asc"}}
],
"query" : {
"match_all": {"_name": "5:2"} <--- name the query with the from/size params
},
"_source": ["title"]
}
在回复中,您将获得"5:2"
,您可以将其解析为from
和size
。
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "test",
"_type": "test",
"_id": "1",
"_score": 1,
"_source": {
"test": "test"
},
"matched_queries": [ <--- you can find from/size here
"5:2"
]
}
]
}