Google Drive API v3(不包括Google照片)

时间:2018-06-27 14:41:48

标签: c# google-drive-api

无论如何,是否可以从以下调用中隐藏Google相册文件夹及其子元素(文件夹和文件)?

FilesResource.ListRequest listRequest = googleDriveClient.Files.List();
listRequest.IncludeTeamDriveItems = true;
listRequest.SupportsTeamDrives = true;
listRequest.PageSize = 1000;
listRequest.Fields = "nextPageToken,files(id,mimeType,modifiedTime,trashed,kind,name,size,md5Checksum,parents)";
result = listRequest.Execute();

谢谢

1 个答案:

答案 0 :(得分:1)

对于Google相册文件夹中的文件,space同时具有“驱动器”和“照片”。因此,即使将drive用于spaces的查询参数,也会检索这些文件。

尽管我认为要使用drive.files.list的Q,但不能使用parents != '### folder ID of Google Photos ###'直接排除Google相册的文件夹。

我认为这种情况可能是一个错误,或者可能尚未实现排除Google相册的功能。因此,作为当前解决方案,如何排除Google相册下的文件夹?流程如下。

  1. 检索Google相册文件夹下的文件夹ID。
    • 在Google相册下有每年的名称的文件夹。
    • 文件夹ID是#####中的https://drive.google.com/drive/folders/#####
  2. 对于drive.files.list的Q,它使用parents!='### folder ID1 ###' and parents!='### folder ID2 ###' and parents!='### folder ID3 ###' and ,,,
    • listRequest.Q = "parents!='### folder ID1 ###' and parents!='### folder ID2 ###' and parents!='### folder ID3 ###' and ,,, and trashed=false"
    • trashed=false意味着未检索垃圾箱中的文件。
    • 由于GET方法,端点的长度受到限制。我希望可以在端点长度超出限制之前发布官方方法。

注意:

  • 在这种解决方法中,由于文件夹不包括在“ Google Photos”文件夹下,因此仅检索“ Google Photos”文件夹。但是未检索“ Google照片”下的文件夹。

参考文献:

如果这对您的情况没有帮助,对不起。