TeamDrive列出所有文件夹,包括子文件夹

时间:2019-02-19 20:20:06

标签: php google-drive-api google-drive-team-drive

我可以访问TeamDrive的上级(根级)文件夹,但是蜜蜂无法成功找到如何获取所有子文件夹(子文件夹)的方法。我想表演的是让所有孩子都打个电话...

我在https://developers.google.com/drive/api/v3/reference/teamdrives/list处看到了teamdrive REST API,但这仅检索根级别。

我可以通过获取$ folderId(这是我们要为其获取子级的文件夹ID)并执行2次调用来检索下一级内容来检索下一级

        $optParams = array(
            'supportsTeamDrives' => true,
        );
        $results = $service->files->get($folderId, $optParams);
        $teamDriveId = $results["teamDriveId"];

然后使用生成的$ teamDriveId并调用files-> listFiles

        $optParams = array(
        'q'                     => "'{$folderId}' in parents and trashed = false and mimeType = 'application/vnd.google-apps.folder'",
        'pageSize'              => $pageSize,
        'corpora'               => 'teamDrive',
        'includeTeamDriveItems' => true,
        'supportsTeamDrives'    => true,
        'teamDriveId'           => $teamDriveId,    // this must be the parent Id
        'orderBy'               => 'name',
        'pageToken'             => $nextPageToken,
    );

    $results = $service->files->listFiles($optParams);
    $nextPageToken = !isset($results["nextPageToken"]) ? "" : $results["nextPageToken"];

这会很慢,因为文件夹可以扩展一段时间...有人知道如何获取FULL文件夹以及Team Drive的所有子结构吗?有谁知道这是否被允许?我在PHP代码和各种REST API函数测试区域中尝试了很多不同的选项。

0 个答案:

没有答案