nodeJS实现邮箱发送信息

一、创建mail.js文件,导入Nodemailer

npm install nodemailer@4.7.0 // 直接nodemailer已经不支持了

二、示例代码

可以参考源网站给出的代码,我这里自己精简了一下

'use strict';
const nodemailer = require('nodemailer');

// 创建发送邮件的请求对象
let transporter = nodemailer.createTransport({
    host: 'smtp.ethereal.email', 
    port: 587, // 端口号
    secure: false, 
    auth: {
        user: testAccount.user, // 发送方邮箱地址
        pass: testAccount.pass // smtp 验证码
    }
});

// 邮件信息
let mailObj = {
    from: '"Fred Foo 👻" <foo@example.com>', // 发送方邮箱及标题
    to: 'bar@example.com, baz@example.com', // 对方邮箱地址
    subject: 'Hello ✔', // 
    text: 'Hello world?', // 邮件内容
    html: '<b>Hello world?</b>' // html格式
};

transporter.sendMail(mailObj);

三、获取host、port和secure

进入 node_modules --> nodemailer -- > lib --> well-known --> server.json

以QQ邮箱为例,如果需要发送邮件的邮箱是QQ邮箱,则 ctrl+f 查找QQ,并修改对应的host、port和secure

四、开启 POP3/SMTP并获取授权码

同样以QQ邮箱为例

  1. 打开QQ邮箱
  2. 进入设置-->账户
  3. 开启POP3/SMTP服务
  4. 在auth的user中填入你的邮箱地址,在pass中填入授权码

 

 

posted @ 2019-11-05 21:30  kusaki  阅读(1099)  评论(0编辑  收藏  举报