如果我查询Google App Engine搜索Go,例如对于前10个结果,如何进行后续查询以获取接下来的10个结果?我没有注意到的游标。
答案 0 :(得分:6)
编辑:好消息!自编写此答案以来,搜索API的游标已经完成并发布,因此它通常可用。
查看Cursor
类型。可以在SearchOptions
中指定{"ab":1,"bc":2,"cd":3}
值。因此,当您致电Index.Search()
时,您可以通过先前从Iterator.Cursor()
获得的Cursor
来传递SearchOptions
。
原始答案如下。
你运气不好。
一般来说,搜索API支持游标(例如,请参阅Java Using cursors),并且它也在Go中实现,但搜索的游标API不完整且未导出。
有关证据,请参阅search/search.go的来源:Iterator
类型(由Index.List()
和Index.Search()
方法返回)有一个未导出的Cursor
字段(目前第#602行,这正是我们认为的,它在内部使用,它只是不被导出。
如果您检查同一源文件(search / search.go)中SearchOptions
结构的来源(这是您在启动/执行搜索时可以传递给Index.Search()
方法的内容):
searchCursor
因此,计划添加对搜索游标,偏移量等的支持,它尚未实现和导出。希望在将来的版本中添加。