2013-07-04 166 views
0

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

例如,使用升降梭箱,它只是一个简单的查询(1个请求):

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

对于SkyDrive中,它是:

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

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

按照谷歌API文档,谷歌为驱动器,它可能使请求

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

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

我觉得制作n+1这样的基本任务的请求太多了。这就是Google Drive API设计的方式,还是有更快的方法来查询文件夹内的所有文件(包含足够的元数据)?

回答

-1

我不是专家,但它看起来像你描述的方式是API的设计方式。从https://developers.google.com/drive/v2/reference/children/list开始,它看起来像是你打算获得一个ListReference的参考,然后从每个项目中获得它的文件ID,然后使用files().get(fileID)函数从那里获取每个文件。

+1

恕我直言,遍历项目列表重新运行一个新的API调用是一个非常糟糕的设计。 +1上面的mbonnin查询解决方案。 – Ronan