Hapi中没有域的Nodemailer返回需要域错误.当代码在Hapi之外运行时,它运行得非常完美



我目前正在编写一个简单的nodejs应用程序。其中一个功能是使用hapi&nodemailer。

该应用程序在等运输工具上成功运行

const transporter = nodemailer.createTransport({
host: mail.somesmtpserver.com,
port: 587,
auth: {
user: name@example.com,
pass: somepassword
}
})

我目前正在尝试使用smtp2go使其工作,我首先在Hapi服务器之外尝试了它,使用user作为"某个用户名",而不使用域。它运行得很好,smtp2go会记录发送的电子邮件。

我试图在Hapi中放入相同的代码,它返回

(node:3211) UnhandledPromiseRejectionWarning: Error: Mail command failed: 501 <some-username>: sender address must contain a domain

我试着把发送方代码放在一个异步函数中,然后用wait调用它们,但仍然不起作用

关于我应该如何编写此代码,有什么想法吗?提前感谢!

显然,在sendEmail函数中,我将其添加为


let mailOptions = transporter.sendMail({
from: `application email <${process.env.MAIL_DOMAIN}>`,
to: `${process.env.EMAIL_RECEIVER}`,
subject: `Email Subject`,
html: htmlToSend
})

如果我的MAIL_DOMAIN被设置为SMTP服务器的用户名(而不是电子邮件(,这将不起作用。测试文件使用了硬编码的电子邮件名称!

我通过将其更改为电子邮件域来解决这个问题,因为它允许我从"不存在"的电子邮件发送!

最新更新