由于Google drive中没有通知人们新文件被添加到他们的共享文件夹的功能,这简直令人难以置信,我被迫写了一个。我的这个系统的第一个版本是使用Google App Script编写的。我不得不终止这个版本,因为我的客户端的负载远远超出了应用程序脚本的配额限制,并且系统在早上9:30左右关闭。
因此,我用GAE/GWT重写了应用程序,并取得了相当大的进展,但我认为我遇到了另一个问题。我找不到获取文件夹/文件上的共享用户列表的方法。根据系统的工作方式,他创建了一个文件。该文件被放在一个文件夹中,然后他启动这个应用程序并点击按钮。然后,这个应用程序扫描文件夹,如果找到新文件,它会进入文件权限,获取与之共享文件的电子邮件地址列表,并向他们发送一封电子邮件,告知有新文件。但是,Drive SDK会返回共享文件的人员的所有信息,但不包括他们的电子邮件地址。是否有一些我还没有在文档中找到的开关,可以给我这些电子邮件地址?
我真的很讨厌不得不再次重写这个东西。
发布于 2013-02-25 16:12:36
有一些关于这方面的讨论,电子邮件地址是隐藏的隐私。您可以获取有权访问该文件的用户的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
发布于 2013-09-27 02:52:23
如果您有权访问用户的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);
});
});另请参阅:
https://stackoverflow.com/questions/15055851
复制相似问题