如何处理类(DriveApp)上的错误或异常

时间:2020-02-09 17:44:04

标签: google-apps-script google-drive-api

有人有代码示例说明如何处理以下调用引发的错误吗?

Drive.Permissions.insert(
   {
     'role': 'reader',
     'type': 'user',
     'value': 'wxy@zzzzzzzz.com'
   },
   fileID,
   {
     'sendNotificationEmails': 'false'
   });

在某些情况下,我收到以下错误,只是想忽略并继续执行我的脚本。错误是:

对drive.permissions.insert的API调用失败,错误为:错误 请求。用户消息:“您正在尝试邀请wxy@zzzzzzzz.com 由于没有与此电子邮件地址关联的Google帐户, 您必须选中“通知其他人”框以邀请此收件人。” (第6行,文件“ Testtwo”)

1 个答案:

答案 0 :(得分:1)

您可以使用@找到indexOf,然后对子字符串进行切片以获得每个电子邮件的域。然后使用if并根据是否为true来设置falsegmail.com。假设您将电子邮件放在一个数组中:

  for (var i = 0; i < emails.length; i++){

    var sign = emails[i].indexOf('@');
    var domain = emails[i].slice(sign+1);


    if (domain == 'gmail.com'){

      parameter = {
        'sendNotificationEmails': 'true'
      }

    } else {
      parameter = {
        'sendNotificationEmails': 'false'
      }
    }

    Drive.Permissions.insert(
      {
        'role': 'reader',
        'type': 'user',
        'value': emails[i]
      },
      fileId,      
      parameter);

  }

}

参考