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 相关文章推荐
$.format,jquery.format 使用说明
Jul 13 Javascript
javascript设计模式 接口介绍
Jul 24 Javascript
javascript 函数声明与函数表达式的区别介绍
Oct 05 Javascript
javascript中this用法实例详解
Apr 06 Javascript
javascript如何用递归写一个简单的树形结构示例
Sep 06 Javascript
weebox弹出窗口不居中显示的解决方法
Nov 27 Javascript
微信小程序用户自定义模版用法实例分析
Nov 28 Javascript
Angular使用动态加载组件方法实现Dialog的示例
May 11 Javascript
JS+HTML5实现获取手机验证码倒计时按钮
Aug 08 Javascript
vuedraggable+element ui实现页面控件拖拽排序效果
Jul 29 Javascript
JavaScript 引用类型实例详解【数组、对象、严格模式等】
May 13 Javascript
JavaScript中交换值的10种方法总结
Aug 18 Javascript
详解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
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
2008/12/06 PHP
php判断上传的Excel文件中是否有图片及PHPExcel库认识
2013/01/11 PHP
php输出含有“#”字符串的方法
2017/01/18 PHP
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
2014/01/02 Javascript
Javascript模拟加速运动与减速运动代码分享
2014/12/11 Javascript
jQuery+PHP+MySQL二级联动下拉菜单实例讲解
2015/10/27 Javascript
JS中使用FormData上传文件、图片的方法
2016/08/07 Javascript
JS设置CSS样式的方式汇总
2017/01/21 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
JS正则表达式完美实现身份证校验功能
2017/10/18 Javascript
webpack4.x CommonJS模块化浅析
2018/11/09 Javascript
在 Angular-cli 中使用 simple-mock 实现前端开发 API Mock 接口数据模拟功能的方法
2018/11/28 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
2019/01/24 Javascript
前端使用crypto.js进行加密的函数代码
2020/08/16 Javascript
[04:12]第二届DOTA2亚洲邀请赛选手传记-Newbee.Sccc
2017/04/03 DOTA
[01:12:27]EG vs Secret 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
python实现计算资源图标crc值的方法
2014/10/05 Python
python 爬取微信文章
2016/01/30 Python
python2.7安装图文教程
2018/03/13 Python
python删除某个字符
2018/03/19 Python
Python中常用的内置方法
2019/01/28 Python
Numpy与Pytorch 矩阵操作方式
2019/12/27 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
2020/06/04 Python
Python基于unittest实现测试用例执行
2020/11/25 Python
Python爬虫UA伪装爬取的实例讲解
2021/02/19 Python
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
PatPat德国:妈妈的每日优惠
2019/10/02 全球购物
行政部总经理岗位职责
2014/01/04 职场文书
工作决心书范文
2014/03/11 职场文书
经济信息系毕业生自荐信范文
2014/03/15 职场文书
爱心活动计划书
2014/04/26 职场文书
青春无悔演讲稿
2014/05/08 职场文书
学院党的群众路线教育实践活动整改方案
2014/10/04 职场文书
优秀党员事迹材料
2014/12/18 职场文书
李强为自己工作观后感
2015/06/11 职场文书
小学数学教师研修日志
2015/11/13 职场文书