创建对由Google Drive API创建的共享驱动器的权限

时间:2020-01-27 22:09:49

标签: google-drive-api

我正在尝试使用PHP和Javascript进行下一步处理:

在“云端硬盘”中创建共享驱动器。 将用户添加到创建的共享驱动器。

但是在创建驱动器时,我正在获取它的ID,在执行添加权限的过程时,我得到了错误“找不到文件”。

这是我的代码:

return gapi.client.drive.drives.list({})
            .then(function(response) {
                var drives = response.result.drives;

                for (let index = 0; index < drives.length; index++) {
                    console.log(drives[index].id);
                    return gapi.client.drive.permissions.create({
                    "fileId": drives[index].id,
                    "transferOwnership": true,
                    "resource": {
                        "role": "owner",
                        "type": "user",
                        "emailAddress": "mail@gmail.com"
                    }
                    })
                    .then(function(response) {
                        console.log("Response", response);
                    },
                    function(err) {
                        console.error("Execute error", err);
                    });

                }
            },
            function(err) {
                console.error("Execute error", err);
            });

救救我! 感谢您的评论!

1 个答案:

答案 0 :(得分:0)

创建共享驱动器权限需要了解的两件事

  1. 如果要create a permission共享驱动器,则需要设置选项"supportsTeamDrives": true。如果您不这样做,那就是错误The file not found
  2. "role": "owner""transferOwnership": true对于共享驱动器不是有效的选项。它们只能用于文件。因此,您的请求将导致错误Owner role is invalid for shared drive items