我对用于服务器开发的 Node.js 相对较新,对 Nodemailer 也绝对是新手,但它似乎是满足我需求的一个不错的选择。我让它使用 gmail 帐户作为测试,但我一直试图通过 Hover.com 将其转换为使用电子邮件地址,但我收到错误:读取 ECONNRESET。我已经三重检查了我的所有参数(主机、端口、用户、通行证等),一切看起来都很好,他们的帮助也无法帮助我,所以我想我应该在这里问。
我用于创建传输的咖啡脚本如下:
transport = nodemailer.createTransport("SMTP", {
host: "mail.hover.com"
secureConnection: true
port: 465
auth: {
user:
pass:
}})
谢谢!
我在 github 上的 nodemailer 上发布了类似的问题,有人能够帮助我,指出这可能是 Node v0.10.x 的 TLS 库中的问题,我可以通过将选项更改为来解决它是:
{
host: "mail.hover.com"
secureConnection: true
port: 465
auth: {
user: "---"
pass: "---"
}
tls: {
secureProtocol: "TLSv1_method"
}
}
我遇到了这个问题,并尝试修复它几个小时。上面的答案帮助我找到了解决方案,但至少在我的情况下,这不是因为我需要指定一个协议。我错误地设置了对象,并将
user:
和 pass:
直接放在配置对象中,而不是放在它们自己的 auth:
子对象中。
我正在这样做:
const carrier = createTransport({
host: 'mail.privateemail.com',
port: 465,
user: '[email protected]',
pass: 'my password'
});
...并像这样修复它,添加
auth: {}
对象:
const carrier = createTransport({
host: 'mail.privateemail.com',
port: 465,
auth: {
user: '[email protected]',
pass: 'my password'
}
});
对我来说,问题出在我的无线网络上。我使用的是公共 Wi-Fi,一旦切换到个人网络,一切就正常了。