我正在使用Gmail服务器通过程序从系统发送电子邮件。最近,我开始收到如下错误:
数据命令失败:421 4.7.0临时系统问题。请稍后再试(WS)。6SM3756432PAB.11-GSMTP
支持中给出了原因。
谁能告诉我有多少电子邮件可以触发此问题?
还是因为其他原因?
如果您使用免费的Gmail帐户发送批量电子邮件,则由于该服务并非旨在向选择加入的订户发送应用交易消息,新闻通讯等事件,因此您很可能会在早期看到这种响应。IMAP/提供的SMTP服务使您能够将Gmail帐户之类的电子邮件客户端(如Microsoft Outlook)使用。
如果您需要发送交易消息,建议您先使用Google“ AWS SES”。
小智 5
如果您使用脚本快速连续发送电子邮件,则会出现此错误。一个简单的方法是在发送电子邮件之间应用睡眠计时器。
我在每封连续的电子邮件之间应用了 1 秒的计时器。
import time
time.sleep(1) // equivalent to 1 second sleep
Run Code Online (Sandbox Code Playgroud)
小智 5
我同意 Anubhav Shrimali 的观点,即如果 Gmail 同时收到多个请求,就会发生错误。我在 Node.js 中使用 Nodemailer 解决了这个问题,方法是在每封连续的电子邮件之间添加 1 秒的延迟,如下所示:
array.foreach(function(data, index) {
setTimeout(() => {
sendmail();
}, 1000 * index);
function sendmail() {
transporter.sendMail(mailOptions, function (error, info) {
if (error) {
console.log(error);
} else {
console.log('Email sent' + info.response);
}
});
}
});
Run Code Online (Sandbox Code Playgroud)