【发布时间】:2013-02-28 18:50:54
【问题描述】:
我正在使用 Google drive api(java 版本)开发一个应用程序。该应用程序将文件保存在模仿文件系统的 Google 驱动器上(即具有文件夹树)。我首先使用 files.list() 方法检索 Google 驱动器上的所有现有文件,但随着文件数量的增加(几百个之后),响应变得更慢。
Java Google API 将响应超时硬编码为 20 秒。我更改了代码以递归方式一次加载一个文件夹(使用 files.list().setQ("'folderId' in parents) )。这种方法解决了超时问题,但它始终丢失了我文件夹中大约 2% 的文件(每次都丢失了相同的文件)。如果我直接搜索文件名files.list().setQ("title='filename'"),我可以通过 Google Drive Web 浏览器界面甚至通过 Google Drive API 查看这些文件。
我假设“在父母中”搜索使用了一些可能只会定期更新的不精确索引。我需要一个更强大、更准确的文件列表。
有什么想法吗?
【问题讨论】:
-
要明确一点 - 我总是调用 setMaxResults( 100000 ) 所以并不是我达到了默认的 100 限制。
-
我对此表示赞同,因为我正在使用 gdrive 开发无浏览器的设备。我目前将列表本地存储在 json 文件中。我用它来轮询更新/更改,因为我遇到了你上面提到的确切问题。
标签: google-drive-api