node实现定时发送邮件的示例代码


Posted in Javascript onAugust 26, 2017

本文介绍了node实现定时发送邮件的示例代码,分享给大家,具体如下:

定时发送,可做提醒使用

nodemailer

nodemailer 是一款简单易用的基于于SMTP协议(或 Amazon SES)的邮件发送组件

cron

cron可以指定每隔一段时间执行指定的程序、也可以指定每天的某个时刻执行某个程序、还可以按照星期、月份来指定。

npm install nodemailer -S
npm install nodemailer-smtp-transport -S
npm install cron -S

代码中有详细的注释(同时希望大家在平时写代码的时候养成写注释的习惯)

let nodemailer = require('nodemailer'),
  smtpTransport = require('nodemailer-smtp-transport'),
  cronJob = require('cron').CronJob;

// SMTP 连接
let transport = nodemailer.createTransport(smtpTransport({
 // 主机
 host: 'smtp.163.com',
 // 是否使用 SSL
 secure: false,
 secureConnection: false,
 // 网易的SMTP端口
 port: 25, 
 auth: {
  // 账号
  user: '***@163.com', 
  // 授权码(自行百度邮箱SMTP的授权码设置),此处非密码
  pass: '***', 
 }
}));
// 设置邮件内容
let mailOptions = {
 // 发件人地址,例如 1234<1234@163.com>
 from: '***<***@163.com>', 
 // 收件人地址,可以使用逗号隔开添加多个
 // '***@qq.com, ***@163.com'
 to: '***@qq.com', 
 // 标题
 subject: 'Hello World', 
 // 邮件内容可以自定义样式
 html: '<strong style="color: red">测试"邮件轰炸机"</strong>'
}
// 定时发送邮件
// 每秒执行一次
// 具体的各项设置查看上方的链接
new cronJob('* * * * * *', () => {
 transport.sendMail(mailOptions, (error, response) => {
  if (error) {
   console.error(error)
  } else {
   console.log('Message Send Ok')
  }
  // 记得关闭连接
  transport.close();
 })
}, null, true, 'Asia/Shanghai');

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 版元素拖拽原型代码
Apr 25 Javascript
jQuery中 delegate使用的问题
Jul 03 Javascript
jquery实现可横向和竖向展开的动态下滑菜单效果
Aug 24 Javascript
JS+CSS实现DIV层的展开、收缩效果
Jan 28 Javascript
Javascript实现苹果悬浮虚拟按钮
Apr 10 Javascript
基于bootstrap插件实现autocomplete自动完成表单
May 07 Javascript
js窗口震动小程序分享
Nov 28 Javascript
Ajax高级笔记 JavaScript高级程序设计笔记
Jun 22 Javascript
jQuery创建及操作xml格式数据示例
May 26 jQuery
JavaScript实现的前端AES加密解密功能【基于CryptoJS】
Aug 28 Javascript
小程序实现长按保存图片的方法
Dec 31 Javascript
在vue项目中封装echarts的步骤
Dec 25 Vue.js
详解webpack3如何正确引用并使用jQuery库
Aug 26 #jQuery
get  post jsonp三种数据交互形式实例详解
Aug 25 #Javascript
详解vue 模拟后台数据(加载本地json文件)调试
Aug 25 #Javascript
浅谈JS获取元素的N种方法及其动静态讨论
Aug 25 #Javascript
AngularJS select设置默认值的实现方法
Aug 25 #Javascript
AngularJS 中ui-view传参的实例详解
Aug 25 #Javascript
node跨域请求方法小结
Aug 25 #Javascript
You might like
生成php程序的php代码
2008/04/07 PHP
PHP中怎样保持SESSION不过期 原理及方案介绍
2013/08/08 PHP
yii的CURD操作实例详解
2014/12/04 PHP
WordPress主题中添加文章列表页页码导航的PHP代码实例
2015/12/22 PHP
PHP随机数 C扩展随机数
2016/05/04 PHP
PHP addslashes()函数讲解
2019/02/03 PHP
jquery创建div 实现代码
2009/04/27 Javascript
jQuery each()方法的使用方法
2010/03/18 Javascript
Javascript下判断是否为闰年的Datetime包
2010/10/26 Javascript
js控制CSS样式属性语法对照表
2012/12/11 Javascript
YUI Compressor压缩JavaScript原理及微优化
2013/01/07 Javascript
jQuery之选择组件的深入解析
2013/06/19 Javascript
JavaScript 数组详解
2013/10/10 Javascript
JS鼠标拖拽实例分析
2015/11/23 Javascript
jQuery原理系列-常用Dom操作详解
2016/06/07 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
使用JavaScript判断手机浏览器是横屏还是竖屏问题
2016/08/02 Javascript
Javascript中click与blur事件的顺序详析
2017/04/25 Javascript
对Layer UI 模块化的用法详解
2019/09/26 Javascript
js实现上传图片并显示图片名称
2019/12/18 Javascript
jQuery+css实现的点击图片放大缩小预览功能示例【图片预览 查看大图】
2020/05/29 jQuery
详解ES6实现类的私有变量的几种写法
2021/02/10 Javascript
[02:04]2016国际邀请赛中国区预选赛VG.R晋级之路
2016/07/01 DOTA
[04:45]DOTA2-DPC中国联赛正赛 iG vs LBZS 赛后选手采访
2021/03/11 DOTA
python 多线程中子线程和主线程相互通信方法
2018/11/09 Python
kali中python版本的切换方法
2019/07/11 Python
python pycharm最新版本激活码(永久有效)附python安装教程
2020/09/18 Python
浅析Python 多行匹配模式
2020/07/24 Python
Python基于Webhook实现github自动化部署
2020/11/28 Python
canvas绘制太极图的实现示例
2020/04/29 HTML / CSS
AT&T Wireless:手机、无限数据计划和配件
2018/06/03 全球购物
英国森林假期:Forest Holidays
2021/01/01 全球购物
舞蹈教育学专业推荐信
2013/11/27 职场文书
四风自我剖析材料
2014/09/30 职场文书
严以用权专题学习研讨会发言材料
2015/11/09 职场文书
MySQL 数据恢复的多种方法汇总
2021/06/21 MySQL