nodemailer中的几个坑

nodemailer是什么

nodemailer是一个nodejs的邮件服务模块

如何用nodemailer发邮件

1.先安装nodemailer

npm i --save nodemailer 

2.使用nodemailer

var nodemailer = require('nodemailer');
var mailTransport = nodemailer.createTransport({
    host: 'smtp.163.com',
    port: 25,
    auth: {
        user: 'user_name@163.com',
        pass: 'xxxxxx'
    }
});

mailTransport.sendMail({
    from: 'user_name@163.com', //你的邮箱
    to: 'xxxxx', //发给谁
    subject: '标题',
    text: '内容'
}, function (err) {
    if (err) {
        console.error('Unable to send email: ' + err);
    }
});


坑在哪里

1.如果是163邮箱的话,auth中的pass密码是163的授权码,而不是登录密码(其他邮箱没试过,应该也是这样的),不然会报错。

2.auth中的user和下面发邮件时的from需要一致,不然也会报错。

3.纠结我大半天的东西,我是看的《node与express4开发》这本书,书中在讲到nodemailer发送邮件时是这样写的:

var mailTransport = nodemailer.createTransport('SMTP', {
    service: 'Gmail',
    auth: {
        user: credentials.gmail.user,
        pass: credentials.gmail.password
    }
});

而官方的例子是(后来看了一下官方示例):

let transporter = nodemailer.createTransport({
    service: 'gmail',
    auth: {
        user: 'gmail.user@gmail.com',
        pass: 'yourpass'
    }
});

看到区别了吧,那个'SMTP',可能是由于模块更新导致的,但是真的是坑到爆了。 另外,《node与express4》这本书还不错,就是有些地方代码有问题(写错),其他还是不错的。

转载于:https://www.cnblogs.com/smartXiang/p/6436176.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值