nodemailer发送邮件的问题
发布于 10 年前 作者 sysulihan 16779 次浏览 最后一次编辑是 8 年前 来自 问答
var nodemailer  = require("nodemailer");
var user = '**********[@qq](/user/qq).com',
    pass = ‘*********';

var smtpTransport = nodemailer.createTransport("SMTP", {
    host : 'smtp.qq.com',
    auth: {
        user: user,
        pass: pass
    }
  });
smtpTransport.sendMail({
    from    : '**********[@qq](/user/qq).com'
  , to      : '**********[@163](/user/163).com'
  , subject : 'Node.JS通过SMTP协议从QQ邮箱发送邮件'
  , html    : '这是一封测试邮件 <br> '
}, function(err, res) {
    console.log(err, res);
});

控制总是会报错

{ [Error: connect EADDRNOTAVAIL]
code: 'EADDRNOTAVAIL',
errno: 'EADDRNOTAVAIL',
syscall: 'connect' } undefined
8 回复

是不是漏了端口设置

@ForestCho 默认端口是25。可能是nodemailer版本的问题,这个用的是1.0的版本,改成0.7的就没有问题了

@sysulihan 哦 我昨天还用了 ,用的是直接npm install 的

请区分SSL端口和非SSL端口;

var smtpTransport = nodemailer.createTransport(“SMTP”,{ host: “smtp.163.com”, secureConnection: true, // use SSL port: 465, // port for secure SMTP auth: { user: " ", pass: " " } });

@lonso 开了,也不行。 nodemailer 版本是 1.1

试试emailjs,我现在在用这个,唯一一点就是多邮件的那个位置有点问题

好像说是 1.+的 不需要 “SMTP” 这个参数。

回到顶部