如果我查询 Google App Engine Search for Go(例如前 10 个结果),我该如何进行后续查询以获取接下来的 10 个结果?没有我所知道的游标。
1 回答
互换的青春
TA贡献1797条经验 获得超6个赞
编辑:好消息!自撰写此答案以来,Search API 的 Cursors 已完成并已发布,因此它已普遍可用。
检查Cursor类型。甲Cursor值可以在指定SearchOptions。因此,当您调用时Index.Search(),您可以将 aSearchOptions与Cursor您之前从Iterator.Cursor().
原答案如下。
你倒霉了。
通常,搜索 API 支持游标(例如参见Java Using cursors)并且它也在 Go 中实现,但用于搜索的游标 API 不完整且未导出。
有关证据,请参阅search/search.go的来源:Iterator类型(由Index.List()和Index.Search()方法都返回)有一个未导出的searchCursor字段(当前第 602 行),这正是我们认为的那样,并且在内部使用,只是不是出口。
如果您SearchOptions在同一个源文件 (search/search.go) 中检查结构的源代码(这是您Index.Search()在启动/执行搜索时可以传递给方法的内容):
// Currently starts at line #464:
type SearchOptions struct {
...
// TODO: cursor, offset, maybe others.
}
因此计划添加对搜索光标、偏移量等的支持,只是尚未实现和导出。希望会在未来的版本中添加。
- 1 回答
- 0 关注
- 147 浏览
添加回答
举报
0/150
提交
取消