Node.js 发送Email

Nodemailer 模块

Nodemailer模块用于发送电子邮件。

使用npm下载安装Nodemailer模块:

G:\qikegu\nodejs>npm install nodemailer

应用程序中导入该模块:

var formidable = require('nodemailer');

发送邮件

现在可以从服务器发送电子邮件了。

下面的例子,使用QQ邮箱发送邮件,还需另外安装两个辅助模块,用于配置邮箱账号:

G:\qikegu\nodejs>npm install nodemailer-smtp-transport nodemailer-wellknown --save

示例

var nodemailer = require('nodemailer');

var smtpTransport = require('nodemailer-smtp-transport');
var wellknown = require("nodemailer-wellknown");
var config = wellknown("QQ");

config.auth = {
    user:'你的账号@qq.com',
    pass:'你的密码' // QQ邮箱此处使用授权码
}

var transporter = nodemailer.createTransport(smtpTransport(config));

var mailOptions = {
  from: '你的账号@qq.com', // 你的QQ邮箱网址,必须与上面配置一致
  to: 'myfriend@qq.com',
  subject: 'Node.js邮件发送测试',
  text: 'test!'
};

transporter.sendMail(mailOptions, function(error, info){
  if (error) {
    console.log(error);
  } else {
    console.log('Email sent: ' + info.response);
  }
});

多个接收人

要向多个收件人发送电子邮件,在mailOptions对象的“To”属性中添加邮箱地址,以逗号分隔:

示例

发送邮件到多个地址:

var mailOptions = {
  from: '你的账号@gmail.com',
  to: 'myfriend@yahoo.com, myotherfriend@yahoo.com',
  subject: 'Node.js邮件发送测试',
  text: 'test!'
}

发送HTML

要在电子邮件中发送HTML格式的文本,使用“HTML”属性,而不是“text”属性:

示例

发送包含HTML的电子邮件:

var mailOptions = {
  from: 'youremail@gmail.com',
  to: 'myfriend@yahoo.com',
  subject: 'Sending Email using Node.js',
  html: '<h1>Welcome</h1><p>That was easy!</p>'
}


浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载