使用Google Apps脚本中的Usermanager.getUser()捕获错误

时间:2012-06-08 16:47:08

标签: google-api google-apps-script

我正在使用Google Spreadsheet创建一个脚本文件,该脚本文件必须处理在我的Google Apps域上获取用户信息。我有管理员权限,并且启用了Provisioning API。在我的代码中,我试图在Google Apps域(未找到用户)上查找特定用户时发现错误,而是显示消息并继续执行其余程序。我在这里的try-catch语句在用户没有错误时起作用。但是,当检索用户时出错时,我收到错误:“序列化继续时出现意外异常”。这是我的代码:

function testOfDomainAccess() {

var i=0;
var anArray= ["johhn.smith", "susan.que]; //john smith misspelled
var user;

for (i=0; i < anArray.length; ++i)
{ 
Logger.log("\nThe current user being processed is " + anArray[i]);

try 
{
user = UserManager.getUser (anArray [i]);
}
catch (error)
{
  Browser.msgBox("Error: " + error.name + "\n Check your spreadsheet for misspellings of " + anArray[i] + " and We will continue to the next user.");
  user = null;
}

if (user != null) {
//Perform tasks 
}

else
  Logger.log("User not found in domain. Moving on the next item in the array.");
}

如果有人可以帮助解决这个问题,我将非常感激。我是Google Apps脚本和Provisioning API的新手。谢谢!

1 个答案:

答案 0 :(得分:0)

看起来像http://code.google.com/p/google-apps-script-issues/issues/detail?id=980报告的错误一样。

解决方法是使用Logger.log()替换Browser.msgBox()调用,并且您的脚本应该按预期运行。