需求:node发送邮件

定时发送邮件

需要准备的模块nodemailer,还需要去获取QQ邮箱的授权码

执行的效果

安装指令:

npm install  nodemailer --save

发送邮件代码:

//导入发送邮件模块
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport({
	service: 'qq',
	auth: {
		user: 'nmxgzs@foxmail.com',//自己的邮箱
		pass: 'wgarcnqutrodebci' //授权码,通过邮箱获取
	}
});

var mailOptions = {
	from: '"柠檬心工作室" <nmxgzs@foxmail.com>', // 发送者(自己)
	to: '2507128400@qq.com', // 接受者,可以同时发送多个,以逗号隔开
	subject: '腾讯超级会员业务通知', // 邮件标题
	text: '', // 文本
	//邮件以html代码的方式  
	//html: `<h2>nodemailer基本使用:</h2><h3>
	//<a href="http://www.baidu.com2">
	//http://www.baidu.com2</a></h3>` 

	//下边配置发送附件信息
	attachments: [
		{
			filename: 'router.js',
			path: '../router.js'
		},
		//{
		//filename : 'content',
		//content : '发送内容'
		//}
	]
};
//发送邮件
transporter.sendMail(mailOptions, function (err, info) {
	if (err) {
		console.log(err);
		return;
	}
	console.log('邮件发送成功');
});


发送图片标注作为附件

实现定时发送

可以将上边代码封装为一个函数,设置一个循环执行的定时任务就可以了

官方文档:https://nodejs.org/zh-cn/docs/guides/timers-in-node/

node官方给的代码:

function intervalFunc() {
  console.log('Cant stop me now!');
}

setInterval(intervalFunc, 1500);


我测试可以i,望采纳,哈哈哈