一、安裝nodemailer
npm install nodemailer --save
二、呼叫
var nodemailer = require("nodemailer"); // 开启一个 SMTP 连接池 var smtpTransport = nodemailer.createTransport("SMTP",{ host: "smtp.qq.com", // 主机 secureConnection: true, // 使用 SSL port: 465, // SMTP 端口 auth: { user: "xxxxxxxx@qq.com", // 账号 pass: "xxxxxxxx" // 密码 } }); // 设置邮件内容 var mailOptions = { from: "Fred Foo <xxxxxxxx@qq.com>", // 发件地址 to: "2838890xx@qq.com, minimixx@126.com", // 收件列表 subject: "Hello world", // 标题 html: "<b>thanks a for visiting!</b> 世界,你好!" // html 内容 } // 发送邮件 smtpTransport.sendMail(mailOptions, function(error, response){ if(error){ console.log(error); }else{ console.log("Message sent: " + response.message); } smtpTransport.close(); // 如果没用,关闭连接池 });
三、常見錯誤
{ [AuthError: Invalid login - 454 Authentication failed, please open smtp flag first!] name: 'AuthError', data: '454 Authentication failed, please open smtp flag first!', stage: 'auth' }
錯誤原因: 帳號未設定該服務
解決方案> 解決方案>開啟服務:POP3/SMTP服務
{ [SenderError: Mail from command failed - 501 mail from address must be same as authorization user] name: 'SenderError', data: '501 mail from address must be same as authorization user', stage: 'mail' }
錯誤原因: 寄件帳號與認證帳號不同
更多node.js使用nodemailerPHP實例網相關文章請關注中文通訊實例網相關文章!