公开共享团队合作中的文件

问题描述

我一直在尝试设置我通过代码上传到服务帐户的共享驱动器上的文件的权限,以便该文件是公开可见的,不幸的是,到目前为止,我尝试过的所有操作似乎都无法正常工作。将文件上载到共享驱动器可以正常工作,但不能将其公开访问。我在下面创建我的权限。请注意,以下呼叫被推迟。

$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);

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...