获取Google Drive SDK中共享用户的电子邮件地址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取Google Drive SDK中共享用户的电子邮件地址相关的知识,希望对你有一定的参考价值。

由于谷歌驱动器中简单令人难以置信的通知功能,通知人们新文件被添加到他们的共享文件夹,我被迫写一个。我的第一个版本系统是使用Google App Script编写的。我不得不杀死该版本,因为我的客户端的负载超出了app脚本的配额限制,系统在早上9:30关闭。

所以我在GAE / GWT中重写了应用程序并且相当远,而不是我认为我遇到了另一个问题。我找不到一种方法来获取文件夹/文件上的共享用户列表。系统的工作方式是,他创建了一个文件。该文件放在一个文件夹中,然后启动此应用程序并点击按钮。然后,此应用程序扫描文件夹,如果找到新文件,则会进入文件权限,获取文件共享的电子邮件地址列表,并向他们发送一封电子邮件,说明有新文件。但是,Drive SDK会返回与共享文件的人员相关的所有内容,但电子邮件地址除外。是否有一些我在文件中找不到的开关会给我这些电子邮件地址?

我真的很想再次重写这件事。

答案

有一些关于此的讨论,电子邮件地址隐藏隐私。您可以获取有权访问该文件的用户的ID,但不能获取该电子邮件地址。

email ids related to shared google drive file Google drive api change ownership of files? value attribute for Permissions Resource not populated in responses

另一答案

如果您有权访问用户的permissionId和fileId(听起来像这样),您可以使用Permissions API's get()方法(javascript版本)获取该文件的电子邮件地址:

var fileId = 'Some Drive fileId';

gapi.client.drive.about.get().execute(function (data) {
    gapi.client.drive.permissions.get({
        'fileId': fileId,
        'permissionId': data.permissionId
    }).execute(function (perms) {
        console.log(perms.emailAddress);
    });
});

也可以看看:

Permissions Resource

About Resource

以上是关于获取Google Drive SDK中共享用户的电子邮件地址的主要内容,如果未能解决你的问题,请参考以下文章

iOS Google Drive SDK 获取子文件夹 ID

具有多个用户帐户的Google Drive SDK OAuth2

如何使用Google Drive SDK查询评论受让人?

IOS:如何使用 Google Drive sdk 库将文件上传到特定的 Google Drive 文件夹

google-drive-sdk 导出每日限制未经身份验证的使用

google drive SDK for iOS 是不是支持 64 位架构?