You are here

使用nodemailer发送邮件

g089h515r806 的头像
Submitted by g089h515r806 on 星期日, 2021-01-17 08:27

我们要在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


论坛: