Nodemailer是一個簡單易用的Node.js郵件發送組件,具體操作如下
1、安裝nodemailer
npm install nodemailer --save
2、特點
Nodemailer的主要特點包括:
以上的功能特點,已經覆蓋了大部分的發郵件的需求了,接下來就讓我們動手開始寫程序吧。
3、簡單示例
這是一個完整的例子來發送電子郵件以明文和HTML本體
var nodemailer = require('nodemailer');// create reusable transporter object using the default SMTP transportvar transporter = nodemailer.createTransport('smtps://user%40gmail.com:pass@smtp.gmail.com');// setup e-mail data with unicode symbolsvar mailOptions = { from: 'Fred Foo 👥 <foo@blurdybloop.com>', // sender address to: 'bar@blurdybloop.com, baz@blurdybloop.com', // list of receivers subject: 'Hello ✔', // Subject line text: 'Hello world 🐴', // plaintext body html: '<b>Hello world 🐴</b>' // html body};// send mail with defined transport objecttransporter.sendMail(mailOptions, function(error, info){ if(error){ return console.log(error); } console.log('Message sent: ' + info.response);});4、常見錯誤
{ [AuthError: Invalid login - 454 Authentication failed, please open smtp flag first!] name: 'AuthError', data: '454 Authentication failed, please open smtp flag first!', stage: 'auth' }錯誤原因: 賬號未設置該服務
解決方案: QQ郵箱 -> 設置 -> 帳戶 -> 開啟服務: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' }錯誤原因: 發件賬號與認證賬號不同,即用戶名和密碼不匹配。
以上就是本文的全部內容,希望對大家的學習有所幫助。
新聞熱點
疑難解答