简介
Nodemailer
是一个Nodejs用于发送邮件的插件。
官网地址为:https://nodemailer.com
主要有一下特点:
支持Unicod编码包括emoji表情
支持Windows系统环境,没有编译的依赖性
支持HTML内容和普通的文本
支持HTML内容中嵌入图片
支持SSL/STARTTLS通讯协议,保证邮件的安全发送
支持OAuth2登录验证
使用演示
1、安装插件
npm install nodemailer nodemailer-smtp-transport
2、引入插件
// 引入email 模块
var nodemailer = require('nodemailer');
var smtpTransport = require('nodemailer-smtp-transport');
3、开启SMTP服务获取密码(QQ邮箱演示)
登录QQ邮箱
==> 设置
==> 账户
==> POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
开启POP3/SMTP服务 生成授权码
4、具体实现发送邮件
// 引入nodemailer 插件
var nodemailer = require('nodemailer');
var smtpTransport = require('nodemailer-smtp-transport');
// 开启一个 SMTP 连接池
var transport = nodemailer.createTransport(smtpTransport({
host: "smtp.qq.com", // QQ邮箱服务器地址
secure: true, // 使用 SSL
secureConnection: true, // 使用 SSL
port: 465, // SMTP 端口
auth: {
user: "11********@qq.com", // 账号 邮箱账号
pass: "xlb**********hjh" // 密码 开启SMPT获取的授权码
}
}));
var mailOptions = {
from: "11********@qq.com", // 发件地址
to: ["12********@qq.com"], // 收件列表(可添加多个,分割)
subject: "Nodejs 邮件发送 Nodemailer", // 标题
text: "文本内容", //文本内容
html: '测试内容' // html 内容
}
transport.sendMail(mailOptions, function(error, response) {
if(error){
console.log("发送失败: " + error);
}else{
console.log("发送成功");
}
transport.close(); //关闭连接池
});