【问题标题】:Sending emails using nodemailer in node.js在 node.js 中使用 nodemailer 发送电子邮件
【发布时间】:2016-02-04 17:42:45
【问题描述】:

我在通过自己的电子邮件地址发送电子邮件时遇到了授权问题。这是我的代码:

var transporter = nodemailer.createTransport({
    host: 'serverDomain',
    port: 25,
    secure: 'false',
    tls: {ciphers: "SSLv3"},
    auth: {
        user: 'myEmailAddress',
        pass: 'myPassword'
    }
});

transporter.sendMail({
    from: 'myEmailAddress',
    to: 'someAddress',
    subject: 'Subject',
    html: 'Some HTML code here'
}, function(error, info){
    if(error){
        console.log(error);
    }
});

而且报错如下:

{ [错误:无效登录:535 授权失败 (#5.7.0)] 代码:'EAUTH', response: '535 授权失败 (#5.7.0)', 响应代码:535 }

我确定凭据是正确的。我在端口 465 和 587 上也遇到了同样的错误。 任何帮助将不胜感激。谢谢。

【问题讨论】:

  • 很可能是因为您尝试连接过时的 SSLv3。它到处都被禁用了,你为什么要尝试使用它?
  • 您确定端口正确吗? 25 岁?
  • 我也尝试了 465 和 587。它们都给出了相同的错误。 @migg 没有它我得到同样的错误
  • 因此,如果您确定与服务器的连接不是问题,那么您的服务器似乎很确定您的凭据不正确。您是否尝试使用凭据直接在服务器上发送邮件?

标签: node.js email ssl openssl nodemailer


【解决方案1】:

这可能是在您的电子邮件帐户中授予访问权限的问题。所以你能确保你做的那些设置是正确的。

  1. 在使用 Gmail 服务时需要允许安全性较低的应用程序
  2. 如果您在这种情况下使用 2FA,则必须创建应用程序专用密码。因为您的普通密码不起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-13
    • 2021-08-23
    • 2019-11-05
    • 2020-11-17
    • 2015-05-19
    相关资源
    最近更新 更多