gpt4 book ai didi

javascript - 谷歌应用脚​​本: Unexpected exception when parsing email

转载 作者:行者123 更新时间:2023-11-28 02:23:12 25 4
gpt4 key购买 nike

我正在尝试制作一个脚本,该脚本在输入中获取群组的电子邮件并解析所有成员以将它们添加到 CSV 文档中。

问题是我的一些组包含其他组,所以我必须递归调用我的函数。要递归地调用它,我需要测试电子邮件地址以了解它是用户还是组。代码如下:

var USERS = new Array();
var INDEX = 0;


function listAllUsersInGroup(email) {
var temporaryObjectListMember = GroupsManager.getGroup(email).getAllMembers();
for (z=0; z<temporaryObjectListMember.length; z++) {
try {
var group = GroupsManager.getGroup(temporaryObjectListMember[z]);
}
catch (err2){Logger.log(err2)}
if (group != null) { listAllUsersInGroup(group.getId());}
else {
try {
var user = UserManager.getUser(temporaryObjectListMember[z].substring(0,temporaryObjectListMember[z].lastIndexOf('@')));
} catch(err) { Logger.log(err) }

if (user != null) {
USERS[INDEX] = user.getEmail();
INDEX++;
}
}
}
}

我用 main 调用这个函数:

function main() {
var email = "grouptest@domain.com";
listAllUsersInGroup(email);
}

当组包含用户和另一个组时,它会因“序列化继续时出现意外异常”错误而中断。

在这种情况下,try catch 似乎不起作用。

一种解决方案可能是测试电子邮件的类型(用户、组、别名...),但我还没有找到如何执行此操作。

谢谢杰瑞米·贝库斯

最佳答案

对脚本进行少量修改后,它似乎可以正常工作。

当您创建 Google 群组时,成员列表将自动删除所有别名,因此这些别名没有问题。您必须检查您是否面临其他群组或可能来自以下两种类型的电子邮件地址:来自您域的电子邮件 --> 您可以使用用户管理器功能找到它来自域外的电子邮件 --> 我不认为在向这些人发送内容之前有办法知道它们是否有效

下一个代码将返回来自您域的“USERS”用户和非来自您域的“EXTUSER”用户。 (运行testingIt())

 function listAllUsersInGroup(email) {
var temporaryObjectListMember = GroupsManager.getGroup(email).getAllMembers();
for (var z in temporaryObjectListMember) {
var member = temporaryObjectListMember[z];
try {
var group = GroupsManager.getGroup(member);
}
catch (err2){
//Logger.log("is not group: "+err2);
}

if (group != null) {
Logger.log(member+" is a group");
listAllUsersInGroup(member);
}
else {
try {
var user = UserManager.getUser(member.split('@')[0]);
} catch(err) {
//Logger.log("it's not a known mail: "+err);
EXTUSERS.push(member);
}

if (user != null) {
USERS.push(member);
}
}
}
Logger.log("end of the group");
}

var EXTUSERS = [];
var USERS = [];


function testingIt(){
listAllUsersInGroup("groupemailadress@domain.ext");
Logger.log("recognized users are: "+USERS);
Logger.log("unrecognized users are: "+EXTUSERS);
}

关于javascript - 谷歌应用脚​​本: Unexpected exception when parsing email,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15346991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com