如何解决公开共享团队合作中的文件
我一直在尝试设置我通过代码上传到服务帐户的共享驱动器上的文件的权限,以便该文件是公开可见的,不幸的是,到目前为止,我尝试过的所有操作似乎都无法正常工作。将文件上载到共享驱动器可以正常工作,但不能将其公开访问。我在下面创建我的权限。请注意,以下呼叫被推迟。
$permissions = new Google_Service_Drive_Permission([
'type' => 'domain','domain' => '[DOMAIN]','role' => 'reader','allowFilediscovery' => false,'supportsAllDrives' => true,'transferOwnership' => true,'fields' => '*'
]);
$service->permissions->create($status['id'],$permissions);
上传所有文件块后,返回$ status ['id'],并且我已经打印了它以确保它是正确的文件ID。该服务帐户上载了文件,因此它应具有更新这些权限的权限,但似乎不起作用。如果重要的话,服务帐户就是共享驱动器上的贡献者。任何指导将不胜感激,如果需要,我可以使用更多代码进一步更新我的帖子。
解决方法
原来,我把参数放在错误的位置。为了得到我想要的东西,我用了这个
$params = [
'supportsAllDrives' => true
];
$service->permissions->create($status['id'],new Google_Service_Drive_Permission([
'role' => 'reader','type' => 'domain','domain' => '[DOMAIN]','allowFileDiscovery' => false
]),$params);
$service->permissions->create($status['id'],$permissions);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。