【发布时间】:2017-04-28 10:52:04
【问题描述】:
我有一个nodejs 应用程序,它使用nodemailer 插件发送电子邮件。这在 99.99% 的情况下都有效,但昨天应用程序因PM2 日志中的以下错误而挂起。
mod.mailer: Error: connect ENETUNREACH 2a00:1450:400c:c04::6c:465 - Local (:::0)
我没有找到很多关于这种错误的信息。网络连接完全有可能出现了问题。下面是我编写的用于传输电子邮件的模块的代码。我将如何捕获这种错误并确保应用程序不会挂断,而是重试发送电子邮件。
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport(process.env.TRANSPORT);
function mail(options) {
transporter.sendMail({
from: process.env.SUBDIRECTORY + '\@' + process.env.HOST + '\ \<geolytix@gmail.com\>',
to: options.to,
subject: options.subject,
text: options.text
}, function (err, info) {
if (err) {
console.log('mod.mailer: ' + err);
}
console.log('mod.mailer: ' + info.response);
});
}
module.exports = {
mail: mail
};
【问题讨论】:
标签: node.js error-handling nodemailer