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 相关文章推荐
javascript 进阶篇3 Ajax 、JSON、 Prototype介绍
Mar 14 Javascript
jquery 使用简明教程
Mar 05 Javascript
JavaScript基本语法学习教程
Jan 14 Javascript
WEB 前端开发中防治重复提交的实现方法
Oct 26 Javascript
AngularJS学习笔记(三)数据双向绑定的简单实例
Nov 08 Javascript
javaScript中封装的各种写法示例(推荐)
Jul 03 Javascript
详解如何用webpack4从零开始构建react开发环境
Jan 27 Javascript
基于Vue实现的多条件筛选功能的详解(类似京东和淘宝功能)
May 07 Javascript
JavaScript+HTML5 canvas实现放大镜效果完整示例
May 15 Javascript
js常见遍历操作小结
Jun 06 Javascript
layer.open的自适应及居中及子页面标题的修改方法
Sep 05 Javascript
使用vue-element-admin框架从后端动态获取菜单功能的实现
Apr 29 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警告Cannot use a scalar value as an array的解决方法
2012/01/11 PHP
php实现数组按指定KEY排序的方法
2015/03/30 PHP
php实现基于pdo的事务处理方法示例
2017/07/21 PHP
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
2017/11/14 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
Yii2框架自定义验证规则操作示例
2019/02/08 PHP
使用Grunt.js管理你项目的应用说明
2013/04/24 Javascript
javascript中的正则表达式使用详解
2015/08/30 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
AngularJS基础 ng-selected 指令简单示例
2016/08/03 Javascript
Bootstrap源码解读按钮(5)
2016/12/23 Javascript
jquery中关于bind()方法的使用技巧分享
2017/03/30 jQuery
微信小程序左滑动显示菜单功能的实现
2018/06/14 Javascript
详解angular如何调用HTML字符串的方法
2018/06/30 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
JSON数据中存在单个转义字符“\”的处理方法
2018/07/11 Javascript
layui 根据后台数据动态创建下拉框并同时默认选中的实例
2019/09/02 Javascript
js实现简单音乐播放器
2020/06/30 Javascript
python中sets模块的用法实例
2014/09/30 Python
探究数组排序提升Python程序的循环的运行效率的原因
2015/04/01 Python
举例讲解Django中数据模型访问外键值的方法
2015/07/21 Python
Python使用ntplib库同步校准当地时间的方法
2016/07/02 Python
Python操作MySQL模拟银行转账
2018/03/12 Python
基于python修改srt字幕的时间轴
2020/02/03 Python
Python可以实现栈的结构吗
2020/05/27 Python
[原创]赚疯了!转手立赚800+?大佬的python「抢茅台脚本」使用教程
2021/01/12 Python
CSS3动画animation实现云彩向左滚动
2014/05/09 HTML / CSS
js实现移动端H5页面手指滑动刻度尺功能
2017/11/16 HTML / CSS
爱普生美国官网:Epson美国
2018/11/05 全球购物
Belvilla法国:休闲度假房屋出租
2020/10/03 全球购物
医学生实习自荐信
2013/10/01 职场文书
《赠汪伦》教学反思
2014/04/12 职场文书
企业金融服务方案
2014/06/03 职场文书
幼儿园清明节活动总结
2014/07/04 职场文书
立案决定书范文
2015/06/24 职场文书
字典算法实现及操作 --python(实用)
2021/03/31 Python