將文件存儲在您自己的Google雲端硬盤帳戶中而不是谷歌驅動器的服務帳戶的解決方案是將所有者權限授予您的Google開發者控制檯中的服務帳戶。
然後在您的個人谷歌驅動器中創建一個文件夾,並獲取該文件夾的ID。
,當你使用的服務帳戶上傳文件,確保把該文件夾作爲文件父ID,您上傳這樣
$file = new Google_Service_Drive_DriveFile();
$file->title = "Automata";
$parent = new Google_Service_Drive_ParentReference();
$parent->setId('Your Folder id');
$file->setParents(array($parent));
$requestss = $drive_service->files->insert($file,array(
'data' => $data,
'mimeType' => 'application/pdf',
));
$permission = new Google_Service_Drive_Permission();
$permission->setRole('writer');
$permission->setType('anyone');
$permission->setValue('[email protected]');
$drive_service->permissions->insert($requestss->getId(), $permission);
的ID現在,你就可以將文件上傳到自己的谷歌驅動器而不是服務帳戶驅動
希望這有助於
但是對於普通賬戶,客戶端應該被授權上傳文件嗎?在那種情況下文件將被存儲在哪裏?在我的帳戶或用戶? –