【问题标题】:How to get an accurate file list through the google drive api如何通过 google drive api 获取准确的文件列表
【发布时间】: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


【解决方案1】:

您能否利用 Page 机制进行多次查询,每次查询只要求少量结果?

【讨论】:

  • 我认为这是我遇到的问题,我已经更新到最新的 api,一切都很好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-25
  • 1970-01-01
相关资源
最近更新 更多