溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

node實(shí)現(xiàn)定時(shí)發(fā)送郵件的示例代碼

發(fā)布時(shí)間:2020-08-23 03:41:10 來源:腳本之家 閱讀:156 作者:Taste 欄目:web開發(fā)

本文介紹了node實(shí)現(xiàn)定時(shí)發(fā)送郵件的示例代碼,分享給大家,具體如下:

定時(shí)發(fā)送,可做提醒使用

nodemailer

nodemailer 是一款簡單易用的基于于SMTP協(xié)議(或 Amazon SES)的郵件發(fā)送組件

cron

cron可以指定每隔一段時(shí)間執(zhí)行指定的程序、也可以指定每天的某個(gè)時(shí)刻執(zhí)行某個(gè)程序、還可以按照星期、月份來指定。

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

代碼中有詳細(xì)的注釋(同時(shí)希望大家在平時(shí)寫代碼的時(shí)候養(yǎng)成寫注釋的習(xí)慣)

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

// SMTP 連接
let transport = nodemailer.createTransport(smtpTransport({
 // 主機(jī)
 host: 'smtp.163.com',
 // 是否使用 SSL
 secure: false,
 secureConnection: false,
 // 網(wǎng)易的SMTP端口
 port: 25, 
 auth: {
  // 賬號
  user: '***@163.com', 
  // 授權(quán)碼(自行百度郵箱SMTP的授權(quán)碼設(shè)置),此處非密碼
  pass: '***', 
 }
}));
// 設(shè)置郵件內(nèi)容
let mailOptions = {
 // 發(fā)件人地址,例如 1234<1234@163.com>
 from: '***<***@163.com>', 
 // 收件人地址,可以使用逗號隔開添加多個(gè)
 // '***@qq.com, ***@163.com'
 to: '***@qq.com', 
 // 標(biāo)題
 subject: 'Hello World', 
 // 郵件內(nèi)容可以自定義樣式
 html: '<strong >測試"郵件轟炸機(jī)"</strong>'
}
// 定時(shí)發(fā)送郵件
// 每秒執(zhí)行一次
// 具體的各項(xiàng)設(shè)置查看上方的鏈接
new cronJob('* * * * * *', () => {
 transport.sendMail(mailOptions, (error, response) => {
  if (error) {
   console.error(error)
  } else {
   console.log('Message Send Ok')
  }
  // 記得關(guān)閉連接
  transport.close();
 })
}, null, true, 'Asia/Shanghai');

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI