我有一种情况,我不应该请求获取scroll_id-我必须以某种方式进行管理,这样才能脱机获取下一页的URL(我正在针对某个公开其Elasticsearch实例的网站进行GET请求)

所以基本上,我有一个包含Elasticsearch查询的URL,它只向我返回40个结果中的20个(每个请求的最大大小为20个)。我想获取下一页的URL-因此,如果我已连接到Internet,则只需从第一个请求中获取scroll_id,然后使用它来进行下一个请求即可。

但是我想避免这种情况,看看是否可以有一个帮助程序类自己构建滚动id。

可能吗?

提前致谢。

最佳答案

scroll_id直接与ES管理的某个内部状态(即初始查询的上下文)相关联,并且在给定的时间段后最终会超时。

一旦时间段超时,将清除搜索上下文,并且滚动ID不再有效。恐怕您无法手工制作滚动id。

但是,如果结果集包含40个结果且您一次只能检索20个,我建议您在第二个查询中简单地设置from: 20,就可以了。

10-07 15:11