【发布时间】:2015-12-13 16:18:51
【问题描述】:
我的电子邮件有时会排队,而不是使用付费 Mandrill 帐户立即发送下载链接 - 有时它会快速发送。我希望它在调用 API 时发送。 Mandrill API 控制面板中没有错误。
这段代码大部分时间都通过 Heroku 上的节点服务器运行良好...我使用 'send_at' 参数 w 当前日期使用 javascript Date() 方法。如何始终如一地发送电子邮件 - 有时队列可能长达 1 小时 30 分钟。
// Text version of message
me_data.text += message;
// Html for message
me_data.html = results['html'];
// current Date for sending
var sendDate = new Date();
mandrill_client.messages.send(
{"message": me_data, "async": async, "ip_pool": ip_pool, "send_at": sendDate},
function (result) {
console.log(result);
//success
},
function (e) {
//_____________________________Error
console.log('A mandrill error occurred: ' + e.name + ' - ' + e.message);
}
);
【问题讨论】:
-
你如何测量 1 小时 30 米的延迟? mandrill 是否在仪表板中报告了这一点?
-
我正在使用 Heroku、Node Mandrill API 来发送()电子邮件,并且我有交易的时间戳、状态“已发送”和“_id”。此外,直到发送电子邮件后,我才在 Mandrill 的控制面板中看到传出消息。最后,我可以通过粘贴原始电子邮件来使用 gmail 标头分析工具查看延迟。你对如何确保它在我打电话时发送 - 或至少在短时间内发送有任何建议吗?感谢任何人的帮助!赞赏
-
如果有人发现同样的问题,请在这里发帖,或者如果您有解决方案!谢谢
-
send_at是一个可选参数。如果您想立即发送邮件,则不应通过。您可能还希望将async传递为 true 以获取消息传递状态(从您的示例中不清楚您是否已经这样做了)。