基于Node.js實(shí)現(xiàn)nodemailer郵件發(fā)送
Nodemailer是一個(gè)簡(jiǎn)單易用的Node.js郵件發(fā)送組件,具體操作如下
1、安裝nodemailer
npm install nodemailer --save
2、特點(diǎn)
Nodemailer的主要特點(diǎn)包括:
- 支持Unicode編碼
- 支持Window系統(tǒng)環(huán)境
- 支持HTML內(nèi)容和普通文本內(nèi)容
- 支持附件(傳送大附件)
- 支持HTML內(nèi)容中嵌入圖片
- 支持SSL/STARTTLS安全的郵件發(fā)送
- 支持內(nèi)置的transport方法和其他插件實(shí)現(xiàn)的transport方法
- 支持自定義插件處理消息
- 支持XOAUTH2登錄驗(yàn)證
以上的功能特點(diǎn),已經(jīng)覆蓋了大部分的發(fā)郵件的需求了,接下來就讓我們動(dòng)手開始寫程序吧。
3、簡(jiǎn)單示例
這是一個(gè)完整的例子來發(fā)送電子郵件以明文和HTML本體
var nodemailer = require('nodemailer'); // create reusable transporter object using the default SMTP transport var transporter = nodemailer.createTransport('smtps://user%40gmail.com:pass@smtp.gmail.com'); // setup e-mail data with unicode symbols var 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 object transporter.sendMail(mailOptions, function(error, info){ if(error){ return console.log(error); } console.log('Message sent: ' + info.response); });
4、常見錯(cuò)誤
{ [AuthError: Invalid login - 454 Authentication failed, please open smtp flag first!] name: 'AuthError', data: '454 Authentication failed, please open smtp flag first!', stage: 'auth' }
錯(cuò)誤原因: 賬號(hào)未設(shè)置該服務(wù)
解決方案: QQ郵箱 -> 設(shè)置 -> 帳戶 -> 開啟服務(wù):POP3/SMTP服務(wù)
{ [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' }
錯(cuò)誤原因: 發(fā)件賬號(hào)與認(rèn)證賬號(hào)不同,即用戶名和密碼不匹配。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
- nodejs實(shí)現(xiàn)發(fā)送郵箱驗(yàn)證碼功能
- node.js模擬實(shí)現(xiàn)自動(dòng)發(fā)送郵件驗(yàn)證碼
- 如何利用node實(shí)現(xiàn)發(fā)送QQ郵箱驗(yàn)證碼
- Nodejs 發(fā)送Post請(qǐng)求功能(發(fā)短信驗(yàn)證碼例子)
- Node.js使用第三方插件nodemailer實(shí)現(xiàn)郵件發(fā)送示例
- Node使用Nodemailer發(fā)送郵件的方法實(shí)現(xiàn)
- nodejs模塊nodemailer基本使用-郵件發(fā)送示例(支持附件)
- Node.js使用NodeMailer發(fā)送郵件實(shí)例代碼
- node.js使用nodemailer發(fā)送郵件實(shí)例
- node 使用 nodemailer工具發(fā)送驗(yàn)證碼到郵箱
相關(guān)文章
socket.io斷線重連的幾種場(chǎng)景及處理方法
Socket.IO是一個(gè)庫,可用于在瀏覽器和服務(wù)器之間進(jìn)行實(shí)時(shí),雙向和基于事件的通信,下面這篇文章主要給大家介紹了關(guān)于socket.io斷線重連的幾種場(chǎng)景及處理方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03node基于puppeteer模擬登錄抓取頁面的實(shí)現(xiàn)
本篇文章主要介紹了node基于puppeteer模擬登錄抓取頁面的實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-05-05利用node.js如何創(chuàng)建子進(jìn)程詳解
之前看多進(jìn)程這一章節(jié)時(shí)發(fā)現(xiàn)這塊東西挺多,寫Process模塊的時(shí)候也有提到,今天下午午休醒來靜下心來好好的看了一遍,發(fā)現(xiàn)也不是太難理解。所以下面這篇文章主要給大家介紹了關(guān)于利用node.js如何創(chuàng)建子進(jìn)程的相關(guān)資料,需要的朋友可以參考下。2017-12-12node.js實(shí)現(xiàn)多圖片上傳實(shí)例
這篇文章主要介紹了node.js實(shí)現(xiàn)多圖片上傳實(shí)例,包括路由、控制器和視圖的源碼,重點(diǎn)在圖片上傳處理程序,需要的朋友可以參考下2014-06-06