国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Node.js使用NodeMailer發送郵件實例代碼

2019-11-19 17:18:15
字體:
來源:轉載
供稿:網友

0.目標

這一節,我將實現一個簡單的發送郵件功能。

1.部署

1.1 部署Express

如果不知道如何部署,可參照:部署Express

1.2 準備一個郵箱并開始SMTP服務

為了實現這個功能,你首先要有一個郵箱;由于需要使用SMTP方式發送,你還需要開啟相關功能。你可以登錄你的郵箱,然后開啟這個設置,以新浪郵箱和QQ郵箱為例:


2.服務器端

2.1 使用nodemailer

這里要用到nodemailer,需要自行安裝:

npm install nodemailer --save

在routes/index.js中引用nodemailer:

var multer = require('nodemailer');

2.2 配置

在routes/index.js中創建一個傳輸方式:

var mailTransport = nodemailer.createTransport({  host : 'smtp.sina.com',  secureConnection: true, // 使用SSL方式(安全方式,防止被竊取信息)  auth : {    user : '你的郵箱地址',    pass : '你的郵箱密碼'  },});

注意,低版本的nodemailer可能需要多傳入一個參數“SMTP”:

var mailTransport = nodemailer.createTransport('SMTP', {  host : 'smtp.sina.com',  secureConnection: true, // use SSL  auth : {    user : '你的郵箱地址',    pass : '你的郵箱密碼'  },});

2.3 發送郵件

/* 瀏覽器輸入地址(如127.0.0.1:3000/sned)后即發送 */router.get('/send', function(req, res, next) {  var options = {    from      : '"你的名字" <你的郵箱地址>',    to       : '"用戶1" <郵箱地址1>, "用戶2" <郵箱地址2>',    // cc     : ''  //抄送    // bcc     : ''  //密送    subject    : '一封來自Node Mailer的郵件',    text      : '一封來自Node Mailer的郵件',    html      : '<h1>你好,這是一封來自NodeMailer的郵件!</h1><p><img src="cid:00000001"/></p>',    attachments  :           [            {              filename: 'img1.png',      // 改成你的附件名              path: 'public/images/img1.png', // 改成你的附件路徑              cid : '00000001'         // cid可被郵件使用            },            {              filename: 'img2.png',      // 改成你的附件名              path: 'public/images/img2.png', // 改成你的附件路徑              cid : '00000002'         // cid可被郵件使用            },          ]  };  mailTransport.sendMail(options, function(err, msg){    if(err){      console.log(err);      res.render('index', { title: err });    }    else {      console.log(msg);      res.render('index', { title: "已接收:"+msg.accepted});    }  });});

如果你要發送附件,則先把要發送的文件放入工程中,并修改上面代碼的附件的filename和path。

從代碼中可以知道,要在郵件正文中添加圖片,可以設置圖片的cid,然后在img標簽的src中設置為對應的cid即可。

注意,不建議在js代碼中直接嵌入HTML代碼,也不建議把圖片加到郵件正文中。

3.測試

瀏覽器輸入地址(如127.0.0.1:3000/sned)。

發送等待的時間視附件大小及網絡帶寬等因素不同,如果有一個很大的附件要發送,可能會等待很長時間;所以,建議在測試的時候使用小文件。

如果發送成功,會給出提示:

并在郵箱里收到相應的郵件:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南江县| 黄浦区| 宝兴县| 玉林市| 福贡县| 阳城县| 普兰店市| 陆河县| 金昌市| 七台河市| 乐陵市| 安丘市| 青海省| 繁峙县| 顺义区| 拜城县| 盐山县| 丹巴县| 禹城市| 丹寨县| 广汉市| 大城县| 峡江县| 合山市| 陇西县| 武清区| 岐山县| 陕西省| 惠东县| 龙游县| 长宁区| 裕民县| 九龙城区| 天祝| 贺兰县| 永修县| 永修县| 杨浦区| 河北区| 六盘水市| 全州县|