通过Drive API将多个用户添加到Google云端硬盘文件夹

时间:2017-04-25 09:04:57

标签: php google-drive-api

我有一个电子邮件地址列表,并希望通过Google Drive API授予他们访问Google云端硬盘文件夹的权限。我将电子邮件地址作为变量传递并传递给create permission数组。但是发生错误,说电子邮件地址无效。我使用print_r()来检查电子邮件地址,这是正确的。以下是我在PHP中使用的代码。

$batch = $driveService->createBatch();

// read files containing multiple email address
$myfile = fopen("emaillist.csv","r") or die("Unable to open file!");
$emailList = fread($myfile, filesize("emaillist.csv"));
fclose($myfile);    
$emailListArray = explode(";", $emailList);

$index = 1;
foreach($emailListArray as $email) {

  $userPermission = new Google_Service_Drive_Permission(array(
    'type' => 'user',
    'role' => 'reader'
    'emailAddress' => $email
  ));

  $request = $driveService->permissions->create($fileId, $userPermission, array('fields' => 'id'));
  $batch->add($request, 'user'.$index);

  $index++;
}
$results = $batch->execute();

任何人都可以指导我的代码有什么问题。谢谢!

1 个答案:

答案 0 :(得分:0)

我发现我需要修剪电子邮件地址以删除多余的空格。 即。 'emailAddress'=> $电子邮件 在那之后,它可以工作。