码迷,mamicode.com
首页 > 其他好文 > 详细

使用nodemailer发送邮件

时间:2016-06-04 23:48:02      阅读:777      评论:0      收藏:0      [点我收藏+]

标签:

开发网站的时候经常会遇到发送验证邮件的问题,今天介绍一种node平台上功能强大的module——nodemailer

官方网址:http://nodemailer.com/nodemailer-0-7-deprecated/

nodemailer目前有三个版本,分别是0.7.X,1.X和2.X

三个版本中最大的区别在于创建连接池,其中2.X变化别叫大,支持第三方发送邮件动态的accessKeyId

如果我们使用自己的邮箱的话,0.7.x版本就足够,本次的demo就是使用的该版本,如果有更多的需求请查看官方网站

安装:  npm install nodemailer@0.7.1 --save

安装好之后,我们就来看看如何发送邮件,在发送邮件之前一定要保证邮箱已经开通了SMTP服务。

开启方式: 设置=》账户=》开启(按照说明开启即可),这时候会得到一个密码,当你使用SMTP服务就需要使用该密码进行登录。

 1 var nodemailer = require("nodemailer");
 2 
 3 // 1. 开启一个smtp连接
 4 var smtpTransporter = nodemailer.createTransport("SMTP",{
 5     host: "smtp.qq.com", // 主机
 6     secureConnection: true, // 使用 SSL加密
 7     port: 465, // SMTP 端口
 8     auth: {
 9         user: "user@qq.com", // 账号
10         pass: "pass" // 密码
11     }
12 });
13 
14 //要发送内容
15 var mailoptions = {
16     from: "sender@qq.com",
17     to: "receive@qq.com",
18     subject: "i love u",  //标题
19     html: "<h1>hello dear</h1>"  //邮件内容
20 };
21 
22 // 2. 发送邮件
23 smtpTransporter.sendMail(mailoptions,function(err,info){
24     if(err){
25         console.log(err);
26     }else{
27         console.log(info.response);
28     }
29     //如果不在发送可以直接关闭,如果还需要发送其他邮件,那么就不要关闭连接池,直接发送
30     smtpTransporter.close();
31 });

如果得到501错误,可能是未将该用户设置该服务。开启后的服务如下图。

技术分享

在配置邮件内容的时候,收件人可以是多个,中间用逗号隔开,当收件人是一个数组的时候,我们使用  Array.toString()即可解析为逗号分隔。

 

使用nodemailer发送邮件

标签:

原文地址:http://www.cnblogs.com/xltzs/p/5559822.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!