nodejs nodemailer发送邮件

这篇博客介绍了如何使用旧版本的nodemailer(0.7.1)通过QQ邮箱发送邮件。内容包括:1) 安装nodemailer;2) 开启QQ邮箱的SMTP服务并获取授权码;3) 解决SMTP服务器验证失败、端口错误和SSL缺失等问题的解决方案。博主分享了自己遇到的错误及其解决办法,旨在帮助遇到类似问题的读者。
部署运行你感兴趣的模型镜像

注:由于本人使用最新版本的nodemailer不兼容,所以目前使用的是0.7.1版的nodemailer


下面展示的是使用QQ邮箱发送邮件的实例,如果你有其它需求,也可以更换成其他邮箱发送,如(163,gmail等)。


1.安装nodemailer

npm install nodemailer@0.7.1


2.调用

var to = 'XXX@qq.com';        //收件地址
    var subject = '邮件标题';           //发送的标题
    var text = '文本内容';              //文本
    var html = '<h1>邮件内容</h1>';   //发送的内容

    var transporter = nodemailer.createTransport("SMTP", {
        host: "smtp.qq.com",        // 主机
        secureConnection : true,    // 使用 SSL
        port: 465,                  // SMTP 端口
        auth: {
            user: 'XXX@qq.com', //邮箱登录账号
            pass:'XXXXX' //使用QQ邮箱登录密码是不正确的,必须使用QQ邮箱里的授权码,这个请注意,底部有说明。
        }
    });

    var emailOptions = {
        from : 'XXX <XXXXX@qq.com>',
        to : to,
        subject : subject,
        text : text,
        html : html
    }

    transporter.sendMail(emailOptions, function(err, info) {
        if(err){
            return console.log(err);
        }else{
            console.log('Message sent: ' + info.message);
        }
        transporter.close(); // 如果没用,关闭连接池
    });

3.注意事项:

1.首先登录到QQ邮箱,点击左上角设置->账户,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务开启smtp服务,如下图显示


开启之后,点击‘生成授权码’(* 这个授权码是用来登录发送邮件的),如下图显示

获取完之后,如下图显示



2.提示535错误,如下图显示


原因:smtp服务器验证不通过

解决方案:密码要用授权码当密码


3.Error: 101057795,,如下图显示:


原因:端口不正确

解决方案:修改端口(578或25或465等)试试


4.Error: Greeting never received,如下图显示:


原因:没有使用ssl

解决方案:添加secureConnection:true


以上是本人在使用的时候遇到的问题,如果您们还遇到其他问题,可以评论把问题和解决方案写下,方便大家以后遇到相同问题时可以查看。。


您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值