Google api Google Groups API-getUsers()您没有查看组成员列表的权限:
大家干杯 我有一个Google脚本,它使用getUsers()函数检查电子邮件地址是否为组成员 到目前为止:Google api Google Groups API-getUsers()您没有查看组成员列表的权限:,google-api,google-groups,Google Api,Google Groups,大家干杯 我有一个Google脚本,它使用getUsers()函数检查电子邮件地址是否为组成员 到目前为止: 我已激活“管理员SDK目录服务” 我有管理权 对于大多数组来说,这很神奇,但是在某些组的情况下,我会得到授权错误 来自日志的错误消息: “您没有权限查看该组的成员列表:foo@bar" 知道有什么问题吗? 任何事情都非常感激。 谢谢大家! 问题在于GroupsApp服务使用组的权限来确定您是否可以查看成员列表。组的默认设置是将此访问权限限制为组的所有者和经理。所以你有两个选择:
- 我已激活“管理员SDK目录服务”
- 我有管理权
- “您没有权限查看该组的成员列表:foo@bar"
谢谢大家! 问题在于GroupsApp服务使用组的权限来确定您是否可以查看成员列表。组的默认设置是将此访问权限限制为组的所有者和经理。所以你有两个选择: 1) 让自己成为集团的所有者或经理,或 2) 使用AdminSDK检查组成员资格。AdminSDK允许任何超级管理员查看组中的用户列表。要确定用户是否是组的成员,您需要检索组,然后遍历成员列表,然后将每个成员与要查找的用户进行比较:
function isMember(groupKey,userKey){
//groupKey: testGroup@yourdomain.com
//userKey: userEmail@yourdomain.com
var memberList = [];
//Get the members list from the group
var response = AdminDirectory.Members.list(groupKey);
memberList = memberList.concat(response.members);
while (response.nextPageToken){
response = AdminDirectory.Members.list(groupKey,{pageToken: response.nextPageToken});
memberList = memberList.concat(response.members);
}
if (memberList.length > 1){
for (var x in memberList){
if (memberList[x].email == userKey){return true;}
}
}
}
更多信息寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括所需的行为、特定问题或错误以及在问题本身中重现该问题所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅:如何创建一个最小、完整且可验证的示例。