Node使用Nodemailer發(fā)送郵件的方法實現(xiàn)
電子郵件是—種用電子手段提供信息交換的通信方式,是互聯(lián)網(wǎng)應用最廣的服務。通過網(wǎng)絡的電子郵件系統(tǒng),用戶可以以非常低廉的價格(不管發(fā)送到哪里,都只需負擔網(wǎng)費)、非常快速的方式(幾秒鐘之內(nèi)可以發(fā)送到世界上任何指定的目的地),與世界上任何一個角落的網(wǎng)絡用戶聯(lián)系。
在很多項目中,我們都會遇到郵件注冊,郵件反饋等需求。在node中收發(fā)電子郵件也非常簡單,因為強大的社區(qū)有各種各樣的包可以供我么直接使用。Nodemailer包就可以幫助我們快速實現(xiàn)發(fā)送郵件的功能。
開始
這里使用的是qq郵箱,因為qq郵箱的權限比較好設置一些。
安裝模塊
cnpm i nodemailer -S
創(chuàng)建-個SMTP客戶端配置
//引入模塊 nodemailer const nodemailer = require('nodemailer') // 創(chuàng)建一個SMTP客戶端配置 const config = { service: "QQ", auth: { // 發(fā)件人郵箱賬號 user: 'xxxxxx@qq.com', //發(fā)件人郵箱的授權碼 這里可以通過qq郵箱獲取 并且不唯一 pass: 'xxxxxxxxxxx' } }
創(chuàng)建一個SMTP客戶端配置對象
const transporter = nodemailer.createTransport(config)
創(chuàng)建一個收件人對象
// 驗證碼隨機數(shù) let code = Math.random().toString().substr(2, 4) const mail = { // 發(fā)件人 郵箱 '昵稱<發(fā)件人郵箱>' from: `"web"<xxxx@qq.com>`, // 主題 subject: '激活驗證碼', // 收件人 的郵箱 可以是其他郵箱 不一定是qq郵箱 to: '', //這里可以添加html標簽 html: `<b>您的激活驗證碼為:$[code], 請24小時內(nèi)有效,請謹慎保管。</b>` }
發(fā)送郵件 調(diào)用transporter.sendMail(mail, callback)
transporter.sendMail(mail, function(error, info) { if (error) { return console.log(error); } transporter.close() console.log('mail sent:', info.response) })
qq權限的設置
最后就可以愉快的可以發(fā)送郵件啦
完整代碼演示
//引入模塊 nodemailer const nodemailer = require('nodemailer') // 驗證碼隨機書 let code = Math.random().toString().substr(2, 4) // 創(chuàng)建一個SMTP客戶端配置 const config = { service: "QQ", auth: { // 發(fā)件人郵箱賬號 user: 'xxxxxxxxx@qq.com', //發(fā)件人郵箱的授權碼 這里可以通過qq郵箱獲取 并且不唯一 pass: 'xxxxxxxxxxxxxxxxxxxxxx' //授權碼生成之后,要等一會才能使用,否則驗證的時候會報錯,但是不要慌張哦 } } //創(chuàng)建一個SMTP客戶端配置對象 const transporter = nodemailer.createTransport(config) //創(chuàng)建一個收件人對象 const mail = { // 發(fā)件人 郵箱 '昵稱<發(fā)件人郵箱>' from: `"web"<xxxxxxxxxx@qq.com>`, // 主題 subject: '激活驗證碼', // 收件人 的郵箱 可以是其他郵箱 不一定是qq郵箱 to: 'xxxxxxx@163.com', //這里可以添加html標簽 html: `<b>您的激活驗證碼為:$[code], 請24小時內(nèi)有效,請謹慎保管。</b>` } // 發(fā)送郵件 調(diào)用transporter.sendMail(mail, callback) transporter.sendMail(mail, function(error, info) { if (error) { return console.log(error); } transporter.close() console.log('mail sent:', info.response) })
到此這篇關于Node使用Nodemailer發(fā)送郵件的方法實現(xiàn)的文章就介紹到這了,更多相關Nodemailer發(fā)送郵件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- nodejs實現(xiàn)發(fā)送郵箱驗證碼功能
- node.js模擬實現(xiàn)自動發(fā)送郵件驗證碼
- 如何利用node實現(xiàn)發(fā)送QQ郵箱驗證碼
- Nodejs 發(fā)送Post請求功能(發(fā)短信驗證碼例子)
- Node.js使用第三方插件nodemailer實現(xiàn)郵件發(fā)送示例
- nodejs模塊nodemailer基本使用-郵件發(fā)送示例(支持附件)
- Node.js使用NodeMailer發(fā)送郵件實例代碼
- 基于Node.js實現(xiàn)nodemailer郵件發(fā)送
- node.js使用nodemailer發(fā)送郵件實例
- node 使用 nodemailer工具發(fā)送驗證碼到郵箱
相關文章
基于Express+multer實現(xiàn)文件上傳功能
Multer是Node.js中的一個第三方包,或者說是第三方中間件,主要用于是實現(xiàn)文件上傳的功能,本文小編講給大家詳細介紹一下基于Express+multer來實現(xiàn)文件上傳功能,文章通過代碼示例和圖文介紹的非常詳細,需要的朋友可以參考下2023-11-11使用 NodeJS+Express 開發(fā)服務端的簡單介紹
這篇文章主要介紹了使用 NodeJS+Express 開發(fā)服務端的簡單介紹,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-04-04connect中間件session、cookie的使用方法分享
今天大象哥用了下connect的session和cookie,感覺還挺好用的,分享一下(里面坑挺多的,文檔寫的太模糊了,費了哥不少時間)。2014-06-06