列出所有文件夹是直接的孩子谷歌驱动器API



我正试图使用googleapiphp客户端列出位于teamdrive根目录下的所有文件夹。我使用的perans看起来是这样的:

$optParams = array(
'driveId' => "<ID OF TEAM DRIVE>",
'pageSize' => 100,
'includeItemsFromAllDrives' => true,
'supportsAllDrives' => true,
'corpora' => "drive",
'fields'=>'nextPageToken, files(id, name)',
'q' => ["mimeType = 'application/vnd.google-apps.folder'", "'<ID OF TEAM DRIVE>' in parents"]
);

问题是,它还列出了所有子文件夹,而不仅仅是该团队驱动器根目录中的文件夹。

这感觉应该很容易,但我可能错过了一些显而易见的东西。

我确实通过删除DriveId、copora和mimeType解决了这个问题。我的猜测是,这句话(我没有找到相关文档(的意思是一件事或另一件事,而不是一件事和另一件事情。

["mimeType = 'application/vnd.google-apps.folder'", "'<ID OF TEAM DRIVE>' in parents"]

所以对我有效的是:

$optParams = array(
'pageSize' => 100,
'includeItemsFromAllDrives' => true,
'supportsAllDrives' => true,
'fields'=>'nextPageToken, files(id, name)',
'q' => "'<DRIVE ID>' in parents"
);

user3477740,您非常接近。

将您的整个查询放在一个字符串中,如下所示,并(我强烈建议(在括号中分离您的逻辑:

'q' => "(trashed = false) and (mimeType = 'application/vnd.google-apps.folder') and ('<DRIVE ID>' in parents)"

感谢你向我展示了在谷歌驱动器文件夹中引用谷歌驱动器子代的简单方法——它在谷歌驱动器V3 中没有很好的记录

最新更新