我们要在nodejs下面实现找回密码的功能,需要通过邮件发送email,里面包含验证码。这里需要一个邮件发送的功能,我们搜索检查了一下,nodemailer这个模块最好用,这是Nodejs 里面用的最多的发送邮件插件。功能丰富,文档齐全。
安装:
npm install --save nodemailer
使用官方给的代码,加以改造:
let transporter = nodemailer.createTransport({
host: "example.com",
port: 25,
secure: false, // true for 465, false for other ports
auth: {
user: "myuser", // generated ethereal user
pass: "mypass", // generated ethereal password
},
});
// send mail with defined transport object
let info = await transporter.sendMail({
from: '"Info" <info@example.com>', // sender address
to: "55381111@qq.com", // list of receivers
subject: "Node mailer test", // Subject line
text: "Hello world? Node mailer ", // plain text body
html: "<b>Hello world? Node mailer html</b>", // html body
});
提示错误信息:
"error":{"code":"ESOCKET","command":"CONN"}
修正,添加如下代码:
tls: {
// do not fail on invalid certs
rejectUnauthorized: false
},邮件发送成功。
参考链接,https://stackoverflow.com/questions/56147491/what-does-esocket-error-mean-when-im-trying-to-send-an-email

