我正在将文件上传到我的google云端硬盘帐户。这是代码:
putenv('GOOGLE_APPLICATION_CREDENTIALS=xxxx.json');
$client = new Google_Client();
$client->useApplicationDefaultCredentials();
$client->addScope(Google_Service_Drive::DRIVE);
$redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
$client->setRedirectUri($redirect_uri);
$tempfile = "birds-image-11.jpg";
$file = new Google_Service_Drive_DriveFile(array(
'name' => 'tc-test.jpg',
));
$service = new Google_Service_Drive($client);
$result = $service->files->create($file, array(
'data' => file_get_contents($tempfile),
'mimeType' => 'application/octet-stream',
'uploadType' => 'media',
'fields' => 'id, name,kind'
));
printf("File ID: %s\n", $result->id);echo '<br>';
printf("File Name: %s\n", $result->name);echo '<br>';
printf("File Kind: %s\n", $result->kind); echo '<br>';
我可以看到返回的id,名称和种类。这意味着文件已经上传了吗?但是当我转到谷歌驱动器时,我看不到文件。
如果我列出api $service->files->listFiles();
中的文件,我可以看到返回的上传文件对象。
为什么我在驱动器(https://drive.google.com/drive/my-drive)中看不到它,我应该在哪里查找文件?
顺便说一句,我正在使用api的服务帐号。
答案 0 :(得分:0)
您还需要设置文件的父文件夹,这些文件夹可以是用户&#34;我的云端硬盘&#34;或任何其他文件夹。
Specify folder name while upload file via Google Drive API
https://developers.google.com/drive/v3/reference/files/update