错误:连接ECONNREFUSED 127.0.0.1:465 nodemailer

Nur*_*ihu 7 email node.js

我正在使用我的Gmail帐户向我的用户电子邮件发送smtp警报消息.示例,注册或帐户被阻止等我正在使用节点邮件程序,并且电子邮件已成功发送,没有一次失败.以下是我的代码.

var nodemailer = require("nodemailer");

// create reusable transport method (opens pool of SMTP connections)
var smtpTransport = nodemailer.createTransport("SMTP",{
    service: "Gmail",
    auth: {
        user: "gmail.user@gmail.com",
        pass: "userpass"
    }
});

// setup e-mail data with unicode symbols
var mailOptions = {
    from: "Fred Foo ? <foo@blurdybloop.com>", // sender address
    to: "bar@blurdybloop.com, baz@blurdybloop.com", // list of receivers
    subject: "Hello ?", // Subject line
    text: "Hello world ?", // plaintext body
    html: "<b>Hello world ?</b>" // html body
}

// send mail with defined transport object
smtpTransport.sendMail(mailOptions, function(error, response){
    if(error){
        console.log(error);
    }else{
        console.log("Message sent: " + response.message);
    }

    // if you don't want to use this transport object anymore, uncomment following line
    //smtpTransport.close(); // shut down the connection pool, no more messages
});
Run Code Online (Sandbox Code Playgroud)

就在昨天,将google for business帐户注册到我的@mydomain帐户,然后将gmail替换为我的新google for business email

var smtpTransport = nodemailer.createTransport("SMTP",{
    service: "Gmail",
    auth: {
        user: "user@mydomain.com",
        pass: "userpass"
    }
});
Run Code Online (Sandbox Code Playgroud)

问题是,它不会使用新帐户发送电子邮件.它宁可在我的控制台上返回标题错误.我尝试更改我的新帐户的安全性,以允许来自谷歌控制台的安全性较低的应用程序都无济于事.请问这个错误意味着什么?另外考虑使用我的电子邮件的用户名和密码,这是最好的选择吗?请问如何最好地实现?任何帮助,将不胜感激.

Nur*_*ihu 12

谢谢你们的时间.以下是对我有用的.

nodemailer.createTransport('smtps://user%myDomain.com:pass@smtp.gmail.com');
Run Code Online (Sandbox Code Playgroud)

变成

var smtpConfig = {
    host: 'smtp.gmail.com',
    port: 465,
    secure: true, // use SSL
    auth: {
        user: 'user@myDomain.com',
        pass: 'pass@pass'
    }
};
var transporter = nodemailer.createTransport(smtpConfig);
Run Code Online (Sandbox Code Playgroud)

我在doc https://github.com/nodemailer/nodemailer上找到了上面的例子.我怀疑如果您的密码包含@符号u和smtps链接的符号,可能会发生这种情况.因此,建议将其拆分为一个对象,而不使用@符号干扰您的smtps网址.这是我的猜想.尽管如此,上述解决方案对我有用.另外,不要忘记从谷歌控制台允许不太安全的应用程序.

  • 我已经使用了代码。尽管如此,它对我不起作用。 (3认同)