如何在PHP的文档上的Google表格上创建权限

时间:2018-12-07 09:22:03

标签: php google-api google-docs-api

如何在Google表格上创建文档权限。这里显示错误

{
 "error": {
 "errors": [
  {
     "domain": "global",
     "reason": "insufficientPermissions",
     "message": "Insufficient Permission"
  }
 ],
   "code": 403,
   "message": "Insufficient Permission"
  }
}

这是我的代码。我使用php库。

function insertPermission($fileId) {

  $client = $this->getClient();
  $client->setScopes(Google_Service_Drive::DRIVE);
  $service = new Google_Service_Drive($client);

  $newPermission = new Google_Service_Drive_Permission(
        array(
            "role"=> "writer",
            "type"=> "domain",)  
    );

  try {
    return $service->permissions->create($fileId, $newPermission);
  } catch (Exception $e) {
    print "An error occurred: " . $e->getMessage();
  }
  return NULL;
}

设置权限后,将拒绝并返回此错误。

1 个答案:

答案 0 :(得分:0)

permissions.create方法可用于将权限插入Google驱动器上的文件中。

POST https://www.googleapis.com/drive/v3/files/fileId/permissions

{
  "role": "writer",
  "type": "user",
  "emailAddress": "test@test.com"
}

要运行上述请求,当前已通过身份验证的用户必须已使用以下范围进行了身份验证,并且当然已经拥有对该文件的权限

  

insufficientPermissions

意味着您通过身份验证的用户未授予您的应用程序进行这些更改的权限,或者他们本身没有此权限。我要做的第一件事是检查您的应用程序所请求的范围,并添加所需的范围并重新验证用户的身份,然后重试。