Node.js 使用NodeMailer发送邮件

准备工作

为了实现这个功能,你首先要有一个邮箱,由于需要使用 SMTP 方式发送,你还需要开启相关功能。你可以登录你的邮箱,然后开启这个设置,以QQ邮箱为例:

开启SMTP

你需要开启这两个服务

服务端

这里要用到 nodemailer,需要自行安装:

 npm install nodemailer

在文件中引入这个模块:

const nodemailer = require('nodemailer');

首先,创建一个传输方式:

const transporter = nodemailer.createTransport({
    service: 'qq',
    auth: {
        user: '你的邮箱地址',//发送者邮箱
        pass: '授权码' //授权码,在准备工作中开启服务时候的授权码
    }
});

配置信息

const mailOptions = {
    from: 'xxxxxx@qq.com', // 发送者
    to: 'xxxxxx@163.com', // 接受者,可以同时发送多个,以逗号隔开
    cc: ',xxxxx@163.com',//抄送
    subject: '发送邮件测试', // 标题
    text: 'Hello world', // 文本
    html: `<h2>NodeJS发送邮件测试</h2>`,
    attachments:[          //发送附件
        {
            filename : 'app.js',    //文件名称
            path: './app.js'        //文件路径
        },
        {
            filename : 'package.json',
            content : './package.json'
        }
    ]
};

发送邮件

transporter.sendMail(mailOptions, function (err, info) {
   if (err) {
       console.log(err);
       return;
   }
   console.log(`发送成功:${info.accepted}`);
});

github地址:https://github.com/17868804701/sendEmail.git

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 0.目标 这一节,我将实现一个简单的发送邮件功能。 参考代码 1.部署 1.1 部署Express 如果不知道如何...
    Mike的读书季阅读 21,931评论 9 23
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,500评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,253评论 19 139
  • 分手后的20天内,是每个失恋者最难熬的一段时间,鲲先生就是这样一个正在经历着失恋的人。记得陈学冬唱的《不再见》中有...
    隔壁羊先生阅读 694评论 0 0
  • 文||刘刘叫我头头 这几天总有学弟学妹打电话咨询保研的事情,看了看时间,不知不觉,又是一年保研季。整理了大家的疑问...
    雨山西木酱阅读 2,081评论 2 20