email - MailApp.sendEmail 方法无法通过正文中包含 URL 的帐户 - 消息被阻止

标签 email google-apps-script gmail

我正在处理 Google Apps 脚本。我正在尝试按如下方式发送电子邮件:

function test_sendmail(){
  var subject = "subject";
  var body = "https://www.google.com/";
  var emailBody = body;
  var options = {
    htmlBody: body
  }

  var recipient = "XXXXXXXXX@gmail.com";

  MailApp.sendEmail(recipient, subject, emailBody, options);
}

"XXXXXXXXX@gmail.com"(电子邮件地址 A)无效,但这只是为了向您展示示例。我在 GAS 执行中使用了真实的电子邮件地址。

GAS 执行由编写代码的另一个 G-suite 域谷歌帐户(电子邮件地址 B)运行。

邮箱A在GAS编辑器中对包含上述代码的电子表格具有编辑权限。

但是,来自上述函数的电子邮件并没有通过电子邮件地址 A。我在电子邮件地址 B 中收到了这封电子邮件。

enter image description here

了解更多: https://support.google.com/mail/answer/6596?visit_id=637267406328019079-2003975007&rd=1

然后,我将邮箱地址替换为邮箱地址B,并尝试发送,确实发送成功。

其次,我更改了 URL 部分:

var body = "https://www.google.com/";

到:

var body = "";

然后,邮件成功到达邮箱地址 A 和 B。

结果如下:

enter image description here

从 1 周或 2 周前开始,最近发生了向电子邮件地址(如电子邮件地址 A)发送带有 URL 的电子邮件失败。在此之前,这4个案例已经成功完成。我不知道为什么最近开始出现这种情况。

我检查了发件人电子邮件地址 B 是否在收件人电子邮件地址 A 的联系人列表中。

它不在我的通讯录中。 enter image description here

但是当我搜索它时,它出现了,所以它出现在所有联系人中。

enter image description here


添加了 1 个: 我尝试向电子邮件地址 C 发送电子邮件,这是与电子邮件地址 B 在同一域中的另一个 G-suite 邮件地址,但电子邮件地址 C 没有电子表格和编辑器的权限。

即使它没有电子表格的权限,它也成功发送到电子邮件 C。


新增 2 个: 我尝试将电子邮件发送到电子邮件地址 D,这是另一个既不是 G-suite 域也不是 @google.com 地址的电子邮件地址。结果与电子邮件地址 A 相同。


最佳答案

Gmail 反垃圾邮件算法很复杂。为防止您的脚本发送的消息被它们阻止,请遵循 Prevent mail to Gmail users from being blocked or sent to spam 上的指南。


可能的解决方法

我的一个客户遇到了同样的问题,我用 GmailApp.sendEmail(recipient,subject,body,options) 替换了 MailApp.sendEmail(message) 显然这有效(10 分钟后没有退回消息)

Rafa Guillermo 在评论中添加:

Just want to add that in this case if this is an ongoing issue you should get your admin to contact G Suite support

如果您无法访问 G Suite 支持,我认为您可以使用 Google 反馈向 Google 报告此问题(打开 Gmail 网络用户界面 > 单击设置按钮(齿轮图标)> 发送反馈)

相关

关于email - MailApp.sendEmail 方法无法通过正文中包含 URL 的帐户 - 消息被阻止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62156903/

相关文章:

email - 生产中的 rails 4 电子邮件预览

python - 属性错误 : 'list' object has no attribute 'encode' when sending an email

email - Google Suite 应用脚本电子邮件发送限制

javascript - SpreadsheetApp.openById 未通过 Google 电子表格

javascript - 使用 Google Sheets Apps 脚本访问 Telegram 机器人菜单的示例 1

google-apps-script - 气体 : prompt for user input with a default value

ios - 有没有办法在 MFMailComposeViewController 中的 "Send"之前以编程方式更改电子邮件正文?

java - 不使用 JavaMail 通过 Gmail 发送电子邮件

perl - 使用 gmail (SVN) 后提交邮件

java - 如何从文件夹 Java IMAP 客户端移动消息/邮件