Google Drive API会将空列表返回给“照片”空间中的查询

时间:2018-02-20 05:04:11

标签: google-drive-api

使用驱动器api drive.files.list为照片空间返回空文件列表。如果我没有指定空格,我会得到一个文件列表,其中一些是驱动器和照片空间的成员,如下所示:

查询:

GET https://www.googleapis.com/drive/v3/files?pageSize=1000&fields=files&key={YOUR_API_KEY}

响应(大量文件元数据,包括具有'space'属性的文件):

..."spaces": ["photos","drive"],...

但是,如果我查询“照片”空间中的文件,我会得到:

查询:

GET https://www.googleapis.com/drive/v3/files?pageSize=1000&spaces=photos&fields=files&key={YOUR_API_KEY}

响应:

{"files": []}

所以看起来我的权限是正确的,因为如果没有指定'space',它将返回给我所有文件信息,但是将'photos'的过滤器约束添加到'space'属性会导致不返回文件元数据(空列表)。

这个功能在过去几年有效,最近似乎已经破裂。

任何提示都赞赏!

1 个答案:

答案 0 :(得分:4)

在当前阶段,照片空间被引入为已弃用。

  

(DEPRECATED)照片空间包含上传到Google相册的所有图片和视频。

参考:https://developers.google.com/drive/v3/web/about-organization#spaces

因为Google相册最近更新了。 (关于这一点,您可能已经知道。)通过此更新,Drive API的端点将检索Google相册中的文件而不使用spaces=photos。如果您只想检索Google相册中的文件,请使用q

如果您可以在Google云端硬盘上看到“Google相册”的文件夹

您可以使用文件夹ID检索Google相册中的文件,如下所示。

GET https://www.googleapis.com/drive/v3/files?q=%22### folder ID of Google Photos ###%22+in+parents&key={YOUR_API_KEY}

如果您看不到“Google照片”

的文件夹

根据您的问题,您可能已经完成了以下设置。如果您已经完成,请忽略此。

如果您看不到“Google相册”的文件夹,请访问https://support.google.com/photos?p=drive,然后查看该文档。启用Google云端硬盘后,您可以看到该文件夹​​并检索文件夹ID。在这种情况下,“Google相册”中的文件和文件夹将变为"spaces": ["drive"]

如果我误解了你的情况,我很抱歉。