如何在 Google Drive API v3 PHP 中列出特定文件夹中的文件

2022-08-30 13:57:18

我正在寻找一种方法,如何在Google云端硬盘API v3中列出特定文件夹(带有文件夹ID)中的文件。我使用了这个功能,但它返回谷歌云端硬盘中的所有文件。你知道我可以使用哪个功能吗?$service->files->listFiles()


答案 1

很酷,我找到了答案。

  $optParams = array(
        'pageSize' => 10,
        'fields' => "nextPageToken, files(contentHints/thumbnail,fileExtension,iconLink,id,name,size,thumbnailLink,webContentLink,webViewLink,mimeType,parents)",
        'q' => "'".$folderId."' in parents"
        );
  $results = $service->files->listFiles($optParams);

答案 2

我发现有一个警告。如果我不是文件夹的所有者并且尚未打开文件,则此方法不会向我显示它。也就是说,如果我在Chrome中浏览一个文件夹,我可以看到其中的所有文件,但是如果我使用API,我只会得到我以前在浏览器中打开的两三个文件。

更新:我弄清楚了为什么我会得到这个结果。我用过

q=f"parents in '{folder_id}'"
而不是为什么那会返回任何东西?谁知道呢?
q=f"'{folder_id}' in parents"

推荐