捕获电子邮件传递错误

时间:2013-09-21 14:34:33

标签: google-apps-script

我有一个由用户提交的表单填充的Google Apps电子表格。我正在尝试编写一个脚本来验证用户填写的电子邮件字段是否有效。我正在使用MailApp发送确认电子邮件并发现错误,例如:

try {
  MailApp.sendEmail(address, subject, message, {'htmlBody':htmlMessage, 'noReply':true});
  Logger.log("Sending email to " + address);
 } catch(e) {
  return "Failed: Invalid address";
 }

这适用于即时错误(空地址或格式错误的地址),但不适用于不存在的电子邮件地址。要抓住这些,直到现在我使用以下代码等待5秒,然后检查收件箱中的邮件传递通知电子邮件:

Utilities.sleep(5000);
var threads = GmailApp.search("is:unread subject:\"delivery status notification\" " + address);
if (threads.length > 0) {
  return "Failed: Delivery failed. " + threads[0].getPermalink();
}

去年我最后一次使用它时工作正常,但现在尝试,当通过脚本发送邮件时,我不再收到邮件传递通知消息 - 显然谷歌改变了一些东西,现在只有手动发送的消息才会收到通知。

因此,鉴于我之前的方法已停止工作,是否有人知道另一种自动方法来验证电子邮件是否有效?

0 个答案:

没有答案