nodejs 发送邮箱信息 npm nodemailer 模块
日期: 2017-09-05 浏览量: 4300
nodemailer 是 nodejs 中的邮件发送模块,本文使用的版本为4.0.1
安装模块:
npm install nodemailer
安装完成后项目里面引用此模块:
var nodemalier = require( 'nodemailer' );
QQ邮箱:
发送邮件的邮箱需要开启 POP3/SMTP服务,需要获取授权码,具体操作如下:
登录QQ邮箱 -> 设置 -> 账户 -> 开启POP3/SMTP服务 ,并生产授权码
服务器端代码:
/*发送验证邮箱连接
* email 需验证邮箱号
* callback 回调函数 处理发送后的业务逻辑
* */
function sendmail(email,callback){
let transporter = nodemailer.createTransport({
service: 'qq',
auth: {
user: '896956692@qq.com',
pass: 'edwxjmnxwmnbbefj' //授权码,通过QQ获取
}
});
let mailOptions = {
from: '896956692@qq.com', // 发送者
to: email,
subject: '测试', // 标题
html: '<h4>我的博客:</h4><p><a href="http://fangzhenqi.xin">http://fangzhenqi.xin</a></p>'
};
transporter.sendMail(mailOptions, function (err, info) {
if (err) {
callback(-1);
}else{
callback(1);
}
});
} sendmail('m18811126599@163.com',function(code){
if(code>0){
console.log('发送成功')
}
});
阿里云邮箱:
npm install nodemailer; npm install nodemailer-smtp-transport
服务器端代码:
const nodemailer = require('nodemailer');
const smtpTransport = require('nodemailer-smtp-transport');
/*
* 发送邮箱提醒
* 接受人 receiver
* 模版信息 template
* 回调函数 callback
* */ function sendEmail(receiver, template, callback) {
let transporter = nodemailer.createTransport(smtpTransport({
host: "smtp.fangzhenqi.com", //smtp + 你的域名
port: 80, //阿里云封禁25端口 ,80端口重定向25端口,所以端口使用80
auth: {
user: "postmaster@fangzhenqi.com", //你的阿里云邮箱
pass: "password" // 邮箱密码
}
})); let mailOptions = {
from: "postmaster@fangzhenqi.com", //发送人
to: receiver, //接收人
subject: "这是来自XXX的邮件",
html: template
};
transporter.sendMail(mailOptions, function (err, info) {
return callback(err, info); //回调判断err是否发送成功
});
}
//调用 sendEmail() 方法
sendEmail('896956692@qq.com' , '你好' , (err ,info)=>{
//处理业务逻辑
})
人活着,其实就是一种心态,你若觉得快乐,幸福无处不在;你为自己悲鸣,世界必将灰暗。
阅读排行
最新文章
联系方式
- 邮箱:m18811126599@163.com
- QQ:896956692