node发送邮件服务

2021-01-08  本文已影响0人  zhumu3

之前有任务需求,需要前端自己生成一张图片之后,将这张图片、发送邮件给指定人员,生成图片用puppeteer模块,生成之后,用nodemailer模块发送邮件
nodemailer官网:https://nodemailer.com/about/

1.首先安装nodemailer模块

npm i nodemailer

2.以QQ邮箱为例,emails.js发送邮箱的文件配置如下

const nodemailer = require('nodemailer');

let transporter = nodemailer.createTransport({
//   host: 'smtp.qq.com',
// //   service: 'qq', // 使用了内置传输发送邮件 查看支持列表:https://nodemailer.com/smtp/well-known/
// port:587,      //端口号
// secure:false, //465为true,其他为false
// auth: {
//     user: '88888888@qq.com',//你的邮箱
//     // 这里密码不是qq密码,是你设置的smtp授权码
//     pass: 'jqrtkhfznxgtbcgb',
//   }
});

3.发送的邮件配置如下:

let mailOptions = {
  from: '你的qq邮箱 <88888888@qq.com>', // sender address
  to: '111111111@qq.com,222222222@qq.com,333333333@qq.com', // list of receivers
  subject: '邮件标题', // Subject line
  // 发送text或者html格式
  // text: 'Hello 我是火星黑洞', // plain text body
  html: '<img style="height:50%;width:150%" src="cid:00000001"/><br><br><br><b style="font-size:20px;">top50渠道明细数据(请用PC端打开):</b>', // html body
  attachments : //邮件的附件,这里我放的是图片
[
    {
        filename: 'paper.jpeg',            // 改成你的附件名
        path: '/data/services/iptvDailyPaper/DailyPaper/paper.jpeg',  // 改成你的附件路径
        cid : '00000001'                 // cid可被邮件使用
    }
]
};

// send mail with defined transport object
transporter.sendMail(mailOptions, (error, info) => {
  if (error) {
    return console.log(error);
  }
  if (info) {
     console.log(info);
  }
  transporter.close();      //发送完毕后关闭
  console.log('Message sent: %s', info.messageId);
  // Message sent: <04ec7731-cc68-1ef6-303c-61b0f796b78f@qq.com>
});

最后执行node脚本

node email.js
上一篇 下一篇

猜你喜欢

热点阅读