如何检查文件是否已损坏 google 驱动器 api
how to check if file trashed or not google drive api
我有一个问题,我正在使用这个 client 从我的应用程序到 google 驱动器 api。
但问题是我无法检查文件是否 trashed
。
这是我的尝试
$client = new \Google_Client();
$client->setScopes(\Google_Service_Drive::DRIVE);
$client->setAuthConfig(app_path().'/Credentials/gDrive.json');
$service = new \Google_Service_Drive($client);
$folder = $service->files->get("fileid");
这总是 return 被当作 null 丢弃,不管它是否被丢弃了..
我认为您的目标和现状如下。
- 您想使用 php.
的 googleapis 检查文件是否被放入“垃圾箱”
- 您已经能够使用驱动器 API 获取文件元数据。
- 您正在使用云端硬盘 API v3.
修改点:
- 使用Drive API v3时,“Files:get”方法不会返回所有文件元数据。我认为你的问题的原因是这样的。所以在这种情况下,需要使用
fields
。在你的情况下,如果你只想检查 trashed
,你可以使用 trashed
作为字段。
当这反映到您的脚本中时,它将变成如下。
修改后的脚本:
从:
$folder = $service->files->get("fileid");
到:
$folder = $service->files->get("fileid", array("fields" => "trashed"));
$trashed = $folder['trashed'] ? "true" : "false";
echo $trashed;
- 当
fileid
的文件放入“垃圾箱”时,$trashed
是true
。
- 当
fileid
的文件未放入“垃圾箱”时,$trashed
是 false
。
注:
- 比如你想要所有的文件元数据,你可以使用
"fields" => "*"
而不是"fields" => "trashed"
。
参考:
我有一个问题,我正在使用这个 client 从我的应用程序到 google 驱动器 api。
但问题是我无法检查文件是否 trashed
。
这是我的尝试
$client = new \Google_Client();
$client->setScopes(\Google_Service_Drive::DRIVE);
$client->setAuthConfig(app_path().'/Credentials/gDrive.json');
$service = new \Google_Service_Drive($client);
$folder = $service->files->get("fileid");
这总是 return 被当作 null 丢弃,不管它是否被丢弃了..
我认为您的目标和现状如下。
- 您想使用 php. 的 googleapis 检查文件是否被放入“垃圾箱”
- 您已经能够使用驱动器 API 获取文件元数据。
- 您正在使用云端硬盘 API v3.
修改点:
- 使用Drive API v3时,“Files:get”方法不会返回所有文件元数据。我认为你的问题的原因是这样的。所以在这种情况下,需要使用
fields
。在你的情况下,如果你只想检查trashed
,你可以使用trashed
作为字段。
当这反映到您的脚本中时,它将变成如下。
修改后的脚本:
从:$folder = $service->files->get("fileid");
到:
$folder = $service->files->get("fileid", array("fields" => "trashed"));
$trashed = $folder['trashed'] ? "true" : "false";
echo $trashed;
- 当
fileid
的文件放入“垃圾箱”时,$trashed
是true
。 - 当
fileid
的文件未放入“垃圾箱”时,$trashed
是false
。
注:
- 比如你想要所有的文件元数据,你可以使用
"fields" => "*"
而不是"fields" => "trashed"
。