Mrcdh技术博客 Mrcdh技术博客
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Mrcdh

立志于全桟开发
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Html5

  • JavaScript

  • Nodejs

    • Nodejs 使用 nodemailer 发送邮件
      • 安装
      • 基本使用
      • 发送带附件的邮件
      • attachments 附件参数说明
    • npm镜像管理
    • npm&yarn&npx
    • puppeteer+axios保持登录请求
    • 使用node创建window服务启动程序
    • node图片转base64与base64转图片
    • node图片生成pdf
    • 常用npm库
    • npm&yarn&pnpm命令对比
    • Node常见问题
    • cheerio
    • request
    • selenium-webdriver
    • midway使用常见问题
    • dayjs的基本使用
    • ffmpeg的基本使用
    • mitt微型事件监听发布器
  • express

  • electron

  • Android

  • 微信公众号

  • 框架

  • 其他

  • selenium

  • Sequelize

  • 大前端
  • Nodejs
mrcdh
2020-10-23
目录

Nodejs 使用 nodemailer 发送邮件

# 安装

npm install nodemailer --save
1

# 基本使用

// 这里举简单例子,也可以封装成service来调用
// 引入nodemailer
const nodemailer = require('nodemailer');
// 封装发送者信息
const transporter = nodemailer.createTransport({
  host: 'smtp.qq.com', // 调用qq服务器
  secureConnection: true, // 启动SSL
  port: 465, // 端口就是465
  auth: {
    user: 'mrcdh@qq.com', // 账号
    pass: 'xxxxxxxxxx', // 授权码,
  },
});

// 邮件参数及内容
const mailOptions = {
  from: 'mrcdh@qq.com', // 发送者,与上面的user一致
  // 可以指定发送者的名字,和发送邮箱用空格隔开
  //from: 'mrcdh mrcdh@qq.com',
  to: 'xxxx@xxx.com', // 接收者,可以同时发送多个,以逗号隔开
  subject: '测试的邮件', // 标题
  // text: '测试内容', // 文本
  html: '<h2>测试一下:</h2><a href="https://baidu.com">测试链接</a>',
};

// 调用函数,发送邮件
await transporter.sendMail(mailOptions, function(err, info) {
  if (err) {
    console.log(err);
    return;
  }
  console.log(info);
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

# 发送带附件的邮件

const mailOptions = {
  from:'mrcdh@qq.com',
  to: 'xxxxxxxxx@163.com',
  subject: 'hello',
  html: "<img src='cid:01' style='width:200px;height:auto'>",
  attachments: [{
    "filename":"好歌.mp3",
    "path":"./haoge.mp3"
  },{
    "filename":"test.txt",
    "content":"测试可写的文件"
  },{
    "filename":"test.JPG",
    "path":"./test.JPG",
    "cid":"01"    // 插在邮件正文中的图片
  }]
};
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# attachments 附件参数说明

  • 简单的添加一个附件,为一个mp4
{
  "filename":"你懂的.mp4",
  "path":"./video.mp4"
}
1
2
3
4
  • 内容可修改的附件
{
  "filename":"test.txt",
  "content":"我写在了附件的内容里"
}
1
2
3
4
  • 插入邮件正文中的图片
{
  "filename":"test.png",
  "path":"./test.png",
  "cid":"01"
}
1
2
3
4
5

这个图片不会出现在邮件的附件列表里,而会出现在邮件的正文里,cid 是为该资源编的号,其值应为string类型,使用方式是将img图片的src属性指向'cid:资源编号'。

#node#Node.js
上次更新: 2020/10/23, 14:10:00
pushjs浏览器通知插件
npm镜像管理

← pushjs浏览器通知插件 npm镜像管理→

最近更新
01
python之Anaconda(conda)版本管理
03-24
02
electron文件缓存
02-16
03
vuex数据持久化插件vuex-persist
02-14
更多文章>
Theme by Vdoing | Copyright © 2020-2023 Mrcdh | 苏ICP备2020058908号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×