成都网站建设设计

将想法与焦点和您一起共享

Nodejs+nodemailer如何发送邮件

这篇文章给大家分享的是有关Nodejs+nodemailer如何发送邮件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创新互联专注于成都网站制作、网站设计、外贸网站建设、网页设计、网站制作、网站开发。公司秉持“客户至上,用心服务”的宗旨,从客户的利益和观点出发,让客户在网络营销中找到自己的驻足之地。尊重和关怀每一位客户,用严谨的态度对待客户,用专业的服务创造价值,成为客户值得信赖的朋友,为客户解除后顾之忧。

特点

  • 零依赖的单个模块- 代码易于审核,因为没有暗角。【推荐学习:《nodejs 教程》】

  • 高度关注安全,没人喜欢RCE漏洞

  • Unicode 支持使用任何字符,包括表情符号

  • Windows 支持- 您可以安装它高于海平面在 Windows 上,就像任何其他模块一样,没有编译依赖项。从 Azure 或 Windows 盒子轻松使用它

  • 使用HTML 内容,以及纯文本替代

  • 添加 附件留言

  • 嵌入式HTML 内容的图像附件 - 您的设计不会被阻止

  • 使用TLS/STARTTLS安全发送电子邮件****

  • 不同的 运输方式除了内置的 SMTP 支持

  • 风俗 插件支持用于处理消息

  • 理智 OAuth3验证

  • 代理用于 SMTP 连接

  • ES6码-没有更多的无意内存泄漏,由于吊装VAR

邮件已经封装好使用不同SMTP邮件服务器代发,发送任意内容的邮件信息

//引入模块 nodemailer
const nodemailer = require('nodemailer')

const partnerEmail = {
  "QQ": {
    "host": "smtp.qq.com",
    "port": 465,
    "user": "",
    "pass": ""
  },
  "126": {
    "host": "smtp.126.com",
    "port": 465,
    "user": "",
    "pass": ""
  },
  "163": {
    "host": "smtp.163.com",
    "port": 465,
    "user": "",
    "pass": ""
  }
}

const config = {
  // 163邮箱 为smtp.163.com
  host: partnerEmail.QQ.host,//这是qq邮箱
  //端口
  port: partnerEmail.QQ.port,
  auth: {
    // 发件人邮箱账号
    user: partnerEmail.QQ.user,
    //发件人邮箱的授权码 这里可以通过qq邮箱获取 并且不唯一
    pass: partnerEmail.QQ.pass
  }
}

// 发送带附件的邮件
function sendMail(email,code) {
  // code 验证码
  const transporter = nodemailer.createTransport(config)

  const mail = {
    // 发件人 邮箱  '昵称<发件人邮箱>'
    from: '',
    // 主题
    subject: '激活验证码',
    // 收件人 的邮箱 可以是其他邮箱 不一定是qq邮箱
    to: email,
    // 内容
    text: `您的激活验证码为:${code}, 请3分钟内有效,请谨慎保管。`,
    //这里可以添加html标签
    html: 'baidu',
    attachments:[
    {
      "filename":"xxx.mp3",
      "path":"./xxx.mp3"
    },
    {
      "filename":"xxx.txt",
      "content":"文件"
    },
    {
      "filename":"xxx.JPG",
      "path":"./xxx.JPG",
      "cid":"01"    // 插在邮件正文中的图片
    }
      ]
  }

  return new Promise((resolve, reject) => {
    transporter.sendMail(mail, function (error, info) {
      error ? reject(error) : resolve(info.response)
      transporter.close()
    })
  })
}

exports.sendMail = sendMail`

感谢各位的阅读!关于“Nodejs+nodemailer如何发送邮件”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


分享文章:Nodejs+nodemailer如何发送邮件
文章分享:http://chengdu.cdxwcx.cn/article/ihcdsd.html