NodeMail-指南

1、安装nodemailer

Nodemailer 是一个简单易用的 Node.JS 邮件发送模块(通过 SMTP,sendmail,或者 Amazon SES),支持 unicode

npm install nodemailer --save

1.1 在邮箱中获取授权码 [ 设置操作即可(打开POP3、SMTP) ]

2、Express后端代码

var express = require('express');
var router = express.Router();

let nodemailer = require("nodemailer")

let transporter = nodemailer.createTransport({
    // host: 'smtp.163.com',
    service: "qq", //邮箱类型 例如service:'163'
    secure: true, //是否使用安全连接,对https协议的
    // port: 465, //qq邮件服务所占用的端口
    auth: {
        user: "xxx@qq.com",//开启SMTP的邮箱,发件人
        pass: "xxxxxxxxxx"// qq授权码
    }
})

router.get('/sendEmail', (req, res, next) => {
    let options = {
        from: 'xxxx@qq.com', //发送方
        to: "xxx@qq.com",//接收方
        subject: '111111111111',//邮件主题
        text: "2222222222",//邮件正文
        //html:'',//html模板
        //附件信息
        /*attachments:[
            {filename:'',path:'',}
        ]*/
    }
    transporter.sendMail(options, (err, info) => {
        if (err) {
            res.send(err)
        } else {
            res.send(info)
        }
    })

})


module.exports = router;

3、实例

//添加凭证文件
var credentials = require('./credentials');
//引入邮箱插件
var nodemailer = require('nodemailer');

//创建传输方式
var transporter = nodemailer.createTransport({
	service: 'qq',
	auth: {
		user: credentials.qq.user,
		pass: credentials.qq.pass
	}
});

exports.emails = function(email,res){
	var options = {
		from : '1334785356@qq.com',
		to : email,
		subject : '感谢您在yike注册',
		text : '我们在yike相聚',
		html : '<span>请在这里</span><a href="http://localhost:3000/">点击</a>'
	};
	transporter.sendMail(options,function(err,msg){
		if(err){
			console.log(err);
			res.render('register',{title: '邮件发送错误'});
		}else{
			//console.log('邮件发送成功');
			//res.render('test',{title:'邮件发送成功!'+msg.accepted})
		}
	});
};
exports.forget = function(req,res,date,email){
	var options = {
		from : '1334785356@qq.com',
		to : email,
		subject : 'yike密码修改',
		text : '我们在yike相聚',
		html : '<span>请在这里</span><a href="http://127.0.0.1:3000/forget?date='+date+'&email='+email+'">点击修改本站密码</a>'
	};
	transporter.sendMail(options,function(err,msg){
		if(err){
			console.log(err);
			res.render('register',{title: '邮件发送错误'});
		}else{
			//console.log('邮件发送成功');
			//res.render('test',{title:'邮件发送成功!'+msg.accepted})
		}
	});
	res.send({success:true});
}
### credentials.js
module.exports = {
	cookieSecret:'abdef',
	qq:{
		user: '1334785356@qq.com',
		pass: 'kqpkppucbnnxbahb'
	}
};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值