1、先申请个发送邮箱。这里以网易邮箱为例,申请163邮箱后进入设置开启IMAP/SMTP服务,可以获取到一个授权码。
2、安装nodemailer依赖
npm install nodemailer --save
3、sendEmail.js
const nodemailer = require("nodemailer");
// 发送邮件函数
var sendMail = function (to,subject,html) {
// 创建一个smtp客户端配置
const config = {
service: "163", // 注意事项 service: '163"', // 使用了内置传输发送邮件,具体可查看支持列表:https://nodemailer.com/smtp/well-known/
auth: {
// 发件人邮箱账号
user: '****@163.com',
//发件人邮箱的授权码 这里可以通过qq邮箱获取 并且不唯一
pass: '*******' //授权码生成之后,要等一会才能使用,否则验证的时候会报错
}
}
const transporter = nodemailer.createTransport(config)
//创建一个收件人对象
const mail = {
// 发件人 邮箱 '昵称<发件人邮箱>'
from: `"某某系统"<*****@163.com>`,
// 主题
subject: subject,
// 收件人 的邮箱
to: to,
//这里可以添加html标签
html: html
}
transporter.sendMail(mail, function(error, info) {
if (error) {
return console.log(error);
}
transporter.close()
console.log('mail sent:', info.response)
})
}
module.exports = {
sendMail
};
4、调用
const { sendMail } = require('../utils/sendEmail.js');
sendMail('****@qq.com',
'复核通过通知',
`您提交的${year}年${month}月提成表复核通过!`)