当我尝试从一个Gmail帐户向另一个帐户发送电子邮件时,发现了此错误。如何解决这个错误?帮帮我。
出现错误:
无效的登录名:534-5.7.14 请 通过534-5.7.14登录您的网络浏览器,然后重试。 534-5.7.14 了解更多信息,在534 5.7.14 https://support.google.com/mail/answer/78754 a90-v6sm7292588pfg.106-gsmtp
我已经尝试过允许安全性较低的应用打开 但仍然是相同的错误。 当我在本地计算机上运行应用程序但在服务器计算机上出现此错误时,它可以正常工作
请帮助我
答案 0 :(得分:8)
If you use GMAIL service as a transporter,
Step-1: Log in to your gmail account.
Step-2: Enable less secure app access and/or DisplayUnlockCaptcha on
your gmail account.
Step-3: Follow a 6-step guide on
https://support.google.com/accounts/answer/185833?hl=en
Step-4: Replace your transporter password with the 16-character generated app
password you obtain from Step-3 above.
These four easy steps solved my problem. Feel free to leave a reply message,
if you get stuck, I'm happy to assist you. Otherwise, if this helped you in
any way, go ahead and vote my answer "This answer was useful. Best wishes!!!
答案 1 :(得分:2)
您可能需要允许访问您的Gmail帐户。
https://accounts.google.com/b/0/DisplayUnlockCaptcha
编辑(发表评论后)
///使用默认的SMTP传输创建可重用的传输器对象
transporter = nodemailer.createTransport({
host: 'smtp.gmail.com',
port: 465,
secure: true,
auth: {
user: 'yourEmail',
pass: 'yourPassword'
}
});
您的'nodemailer.createTransport'应该看起来类似。
答案 2 :(得分:0)
我遇到了同样的问题,因为在本地环境中使用邮递员客户端可以正常工作。
但是给出错误或我配置的aws-linux vpc。
因此,可以将其固定为:
let nodemailer = require('nodemailer');
const transporter = nodemailer.createTransport({
host: 'smtp.gmail.com',
port: 587,
ignoreTLS: false,
secure: false,
auth: {
user: "your mail",
pass: 'your password'
}
});
module.exports = transporter;
请确保您拥有对帐户的访问权限,并且应启用安全性较低的应用程序设置。
答案 3 :(得分:0)
低安全性方法是暂时的,我无法在生产中使用它,但是我发现了一篇文章,该文章使使用OAuth连接到GMail here更加容易 带有示例代码,效果很好