摘要:使用發(fā)送郵件最近在做用戶(hù)注冊(cè)的功能,有這樣的需求用戶(hù)填完信息點(diǎn)擊注冊(cè)后,服務(wù)器要發(fā)給用戶(hù)注冊(cè)郵箱一個(gè)激活鏈接來(lái)激活賬戶(hù),后端用寫(xiě)的,第一次做后端發(fā)送郵件的功能,折騰了半天,終于實(shí)現(xiàn)了,哈哈。
使用Nodemailer發(fā)送郵件
最近在做用戶(hù)注冊(cè)的功能,有這樣的需求:用戶(hù)填完信息點(diǎn)擊注冊(cè)后,服務(wù)器要發(fā)給用戶(hù)注冊(cè)郵箱一個(gè)激活鏈接來(lái)激活賬戶(hù),后端用Node寫(xiě)的,第一次做后端發(fā)送郵件的功能,折騰了半天,終于實(shí)現(xiàn)了,哈哈。
關(guān)于Node生態(tài)下發(fā)送郵件的插件也有很多,我用的比較主流的Nodemailer來(lái)做的。如果要用SMTP協(xié)議的話(huà)還要引入Nodemailer的一個(gè)模塊nodemailer-smtp-transport
Nodemailer官網(wǎng)
首先新建一個(gè)文件夾,cd到這個(gè)文件夾
安裝 Nodemailer 和 nodemailer-smtp-transport
npm i nodemailer nodemailer-smtp-transport --save
在文件根目錄下新建test.js文件,結(jié)合官網(wǎng)給的的例子,我們先搭建一個(gè)簡(jiǎn)單的例子
//test.js const nodemailer = require("nodemailer") const smtpTransport = require("nodemailer-smtp-transport") // 1. 創(chuàng)建 const transport = nodemailer.createTransport(smtpTransport({ host: "xxx.com", //查看發(fā)送郵件的郵箱開(kāi)放的host port: xx, //查看發(fā)送郵件的郵箱開(kāi)放的port secureConnection: true, //使用 SSL auth: { user: "[email protected]", //發(fā)送郵件的郵箱 pass: "xxxxxx" //發(fā)送郵件的郵箱的密鑰 } })); // 2. 郵件的具體信息 const mailOptions = { from: ""小明"", //發(fā)送郵件的郵箱,與上面 user 相同 to: "[email protected]", //接收郵件的郵箱,如有多個(gè),用逗號(hào)隔開(kāi) subject: "這是一封測(cè)試郵件", //郵件標(biāo)題 html: " 這是一封用nodejs的nodemailer發(fā)送的測(cè)試郵件。
" //郵件內(nèi)容,可以為html }; // 3. 發(fā)送郵件 transport.sendMail(mailOptions, function(error, info){ if(error){ console.log(error); }else{ console.log("Message sent: " + info.response); } });
這樣基本的框架都搭好了,其實(shí)重要的是在創(chuàng)建時(shí),如何獲取到 host port 以及 user中的name和pass
下面我試驗(yàn)了兩種郵箱,QQ郵箱 阿里的企業(yè)郵箱
QQ郵箱查看了QQ郵箱的幫助中心 得知
host 為 smtp.qq.com
port 為 465
user 是你要發(fā)送郵件的郵箱
pass 需要開(kāi)啟郵箱的SMTP
功能,開(kāi)啟方法在QQ郵箱幫助中心有
開(kāi)啟的時(shí)候他會(huì)發(fā)送給你一串英文,這個(gè)就是我們需要的pass
到這個(gè)地方就可以測(cè)試一下了!
到終端執(zhí)行
node test.js
可以看到打印的日志,如果顯示OK,那就快去接收的郵箱里看看有沒(méi)有郵件了
注意這里是企業(yè)郵箱,因?yàn)槲以诎⒗镌粕腺I(mǎi)的域名,送的企業(yè)郵箱,所以想著試一試。
他的幫助文檔里也可以查到
host 為 smtpdm.aliyun.com
port 為 25
user 是你要發(fā)送郵件的郵箱
pass 的獲取需要配置一下郵箱,使用 SMTP 發(fā)送郵件
如果沒(méi)有發(fā)信域名需要自行新建域名,新建完成后配置域名,鏈接
然后驗(yàn)證發(fā)信域名,驗(yàn)證成功后,點(diǎn)擊發(fā)信地址 點(diǎn)擊設(shè)置SMTP密碼(注意:這里必須要設(shè)置SMTP密碼,否則還是沒(méi)有開(kāi)啟成功)
pass就是你剛剛輸入的SMTP密碼
快去測(cè)試一下吧~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/107114.html
摘要:本文首發(fā)于個(gè)人博客項(xiàng)目源碼,歡迎,說(shuō)不定哪天脫單了就能用到了寫(xiě)在前面自從用郵箱注冊(cè)了很多賬號(hào)后,便會(huì)收到諸如以下類(lèi)似的郵件剛開(kāi)始還以為是一張圖片,后來(lái)仔細(xì)一看不是圖片呀,好像還是呀,于是好奇寶寶我一下,查閱多篇資料后總結(jié)出怎么用前端知識(shí)和做 本文首發(fā)于個(gè)人博客:VinceBlog 項(xiàng)目源碼:NodeMail,歡迎star,說(shuō)不定哪天脫單了就能用到了 寫(xiě)在前面 自從用郵箱注冊(cè)了很多賬號(hào)后...
摘要:但是,畢竟是人,哪天忙了就會(huì)忘記提交,所以想著能不能實(shí)現(xiàn)在自己阿里云服務(wù)器系統(tǒng)上,設(shè)置,定制下命令,實(shí)現(xiàn)每天定點(diǎn)自動(dòng)提交。 前言 進(jìn)入自己github主頁(yè)會(huì)看到自己的提交記錄,如果某天沒(méi)有提交記錄,那天的小方框就顯示灰色。強(qiáng)迫癥的我,每次進(jìn)來(lái)看著就感覺(jué)不爽,想著自己每天記得提交點(diǎn)東西,爭(zhēng)取像阮一峰大神一樣,每天都有提交記錄。 showImg(https://www.wty90.co...
摘要:業(yè)務(wù)量計(jì)算和數(shù)據(jù)打點(diǎn)這里提到的業(yè)務(wù)量,指的是監(jiān)控預(yù)警系統(tǒng)所關(guān)注的數(shù)據(jù)業(yè)務(wù),如內(nèi)存和利用率吞吐量和響應(yīng)時(shí)間。其中,內(nèi)存和利用率可以通過(guò)下的相關(guān)命令如來(lái)查詢(xún),響應(yīng)時(shí)間和吞吐量則通過(guò)中間件實(shí)現(xiàn)粗略統(tǒng)計(jì)。 需求背景 目前node端的服務(wù)逐漸成熟,在不少公司內(nèi)部也開(kāi)始承擔(dān)業(yè)務(wù)處理或者視圖渲染工作。不同于個(gè)人開(kāi)發(fā)的簡(jiǎn)單服務(wù)器,企業(yè)級(jí)的node服務(wù)要求更為苛刻: 高穩(wěn)定性、高可靠性、魯棒性以及直觀(guān)的...
閱讀 2762·2021-11-19 09:40
閱讀 5345·2021-09-27 14:10
閱讀 2114·2021-09-04 16:45
閱讀 1491·2021-07-25 21:37
閱讀 3009·2019-08-30 10:57
閱讀 2992·2019-08-28 17:59
閱讀 1064·2019-08-26 13:46
閱讀 1418·2019-08-26 13:27