1

使用 Google Drive API (OAuth2) 获取文件夹中包含的所有文件的最佳方法是什么?

例如,对于 Dropbox,它只是对(1 个请求)的简单查询:

https://api.dropbox.com/1/metadata/dropbox/{folder}

对于 Skydrive,它是:

https://apis.live.net/v5.0/{folder}

然后查询upload_location(2个请求)。

根据 Google API 文档,对于 Google Drive,可以向

https://www.googleapis.com/drive/v2/files/{folder}/children

获取data.items包含孩子ID的数据。但是,使用此方法,如果文件夹中有n文件,则需要发出n+1请求(1 用于获取项目列表,n 用于每个项目)。

我认为n+1对这种基本任务提出要求太多了。这是 Google Drive API 设计的方式,还是有更快的方法来查询文件夹内的所有文件(具有足够的元数据)?

4

2 回答 2

5

您可以使用列表端点并将结果限制为具有给定父级的文件。

请参阅https://developers.google.com/drive/v2/reference/files/list

https://www.googleapis.com/drive/v2/files?q='id'+in+parents

这将返回比子端点更多的元数据

于 2014-11-20T14:28:23.720 回答
-1

我不是专家,但看起来你描述的方式就是 API 的设计方式。仅从https://developers.google.com/drive/v2/reference/children/list看起来您打算获取 ChildrenReference 的列表,然后从其中的每个项目中获取其文件 ID,然后使用files().get(fileID) 函数从那里获取每个文件。

于 2013-07-05T19:40:17.380 回答