根据nodemailer官网的配置进行配置
// create reusable transporter object using the default SMTP transport
let transporter = nodemailer.createTransport({
host: "smtp.qq.email", // 邮箱后缀
port: 587,
secure: false, // true for 465, false for other ports
auth: {
user: 'xxxxxxxxx@qq.com', // generated ethereal user(邮箱账号)
pass: 'xxxxxxxxx' // generated ethereal password(邮箱密码)
}
});
// send mail with defined transport object
let info = await transporter.sendMail({
from: '"Fred Foo 👻" <xxxxxxxxx@qq.com>', // sender address <>内填写上面发送邮件的邮箱账号
to: "bar@example.com, baz@example.com", // list of receivers 接收邮件的账号
subject: "Hello ✔", // Subject line
text: "Hello world?", // plain text body
html: "<b>Hello world?</b>" // html body
});
});
好,配置完成之后登陆发送邮件的QQ邮箱,开启SMTP服务。
开启服务完成,使用postman进行接口测试,结果一直返回错误(并非报错),验证了一下邮箱账号和密码没错,打印了一下error提示登陆出错需要授权码。这才想起来开启SMTP服务时有提示在第三方登陆QQ邮箱需要授权码,就把
auth: {
user: testAccount.user, // generated ethereal user(邮箱账号)
pass: testAccount.pass // generated ethereal password(授权码)
}
中的pass的值改成了QQ邮箱提供的授权码,再进行测试时返回成功的值。
来源:CSDN
作者:D1sappearRy
链接:https://blog.csdn.net/D1sappearRy/article/details/103953201