node.js - 使用来自 gmail 的 Nodemailer 发送电子邮件
问题描述
我希望网站在我每次访问“/email”时发送一封电子邮件。(我确实同意接受允许不太安全的应用程序访问我的谷歌帐户中的帐户设置)但是,它实际上从未向我发送电子邮件,而是给了我一个错误。
{ Error: Invalid login: 535-5.7.8 Username and Password not accepted. Learn more at
535 5.7.8 https://support.google.com/mail/?p=BadCredentials d51sm16118087qtd.35 - gsmtp
at SMTPConnection._formatError (/Users/jenniferzhou/Documents/2018 - 2019/CS5150/Bethe-OPS-Project/node_modules/nodemailer/lib/smtp-connection/index.js:774:19)
at SMTPConnection._actionAUTHComplete (/Users/jenniferzhou/Documents/2018 - 2019/CS5150/Bethe-OPS-Project/node_modules/nodemailer/lib/smtp-connection/index.js:1509:34)
at SMTPConnection._responseActions.push.str (/Users/jenniferzhou/Documents/2018 - 2019/CS5150/Bethe-OPS-Project/node_modules/nodemailer/lib/smtp-connection/index.js:547:26)
at SMTPConnection._processResponse (/Users/jenniferzhou/Documents/2018 - 2019/CS5150/Bethe-OPS-Project/node_modules/nodemailer/lib/smtp-connection/index.js:933:20)
at SMTPConnection._onData (/Users/jenniferzhou/Documents/2018 - 2019/CS5150/Bethe-OPS-Project/node_modules/nodemailer/lib/smtp-connection/index.js:739:14)
at TLSSocket._socket.on.chunk (/Users/jenniferzhou/Documents/2018 - 2019/CS5150/Bethe-OPS-Project/node_modules/nodemailer/lib/smtp-connection/index.js:691:47)
at TLSSocket.emit (events.js:188:13)
at addChunk (_stream_readable.js:288:12)
at readableAddChunk (_stream_readable.js:269:11)
at TLSSocket.Readable.push (_stream_readable.js:224:10)
code: 'EAUTH',
response:
'535-5.7.8 Username and Password not accepted. Learn more at\n535 5.7.8 https://support.google.com/mail/?p=BadCredentials d51sm16118087qtd.35 - gsmtp',
responseCode: 535,
command: 'AUTH PLAIN' }
这是我下面的代码。有人可以帮忙吗?
var transporter = nodemailer.createTransport({
service: 'Gmail',
auth: {
user: 'senderemail',
pass: 'passwordtosenderemail'
}
});
const mailOptions = {
from: 'betheops@gmail.com',
to: 'emailreceiver@email.com',
subject: 'This is a test email',
html: '<p>This is a test</p>'
};
app.get('/email', function(req, res) {
transporter.sendMail(mailOptions, function(err, info) {
if (err)
console.log(err)
else
console.log(info);
});
})
解决方案
推荐阅读
- typo3 - 升级到TYPO3 v9.5.14后出现路由异常
- sql - SQLite3 创建表意外“(”错误
- php - 如何使用 sendgrid 在 PHP 中设置样式(html 和 css)电子邮件正文以发送电子邮件?
- flutter - ScreenUtil.instance = ScreenUtil(宽度: 750, 高度: 1334, allowFontScaling: true); 为什么它给我错误?
- r - 根据 R 中的另一列创建一个新变量
- ios - 自动布局约束在运行时消失
- angularjs - AngularJs:如何使用 IFFE 声明一个应用程序和多个控制器、服务等?
- postgresql - 从旧的完整转储和/或最新的基本目录和其他获救文件恢复 PostgreSQL-9.6 数据库
- spring - 如何修复错误“使用名称创建 bean 时出错....”
- reactjs - 10% 的用户无法正常运行 React 开发服务器