Google App Engine Search for Go:如何分页?

如果我查询 Google App Engine Search for Go(例如前 10 个结果),我该如何进行后续查询以获取接下来的 10 个结果?没有我所知道的游标。


不负相思意
浏览 148回答 1
1回答

互换的青春

编辑:好消息!自撰写此答案以来,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.}因此计划添加对搜索光标、偏移量等的支持,只是尚未实现和导出。希望会在未来的版本中添加。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go