node js SMTP error

2019-02-12 22:40发布

I am sending e mail through my godaddy email account. For that i am using node js for sending emails but it is giving following error :

{ [Error: getaddrinfo ENOTFOUND] code: 'ENOTFOUND', errno: 'ENOTFOUND', syscall: 'getaddrinfo' }

Source code:

var transporter = nodemailer.createTransport({
    host: 'ssl://smtpout.secureserver.net',
    port: 465,
    auth: {
        user: 'Email address',
        pass: 'password'
    }
});

var mailOption = {
    from:  from,             
    to:   to ,                                   
    subject: subject,                            
    text:  body                                 
};

transporter.sendMail(mailOption,function(error, response){

    if(error){
        console.log(error);
    }
    else{
        var successRes = { "status": "success" }
        res.send(successRes,200);
    }
});

2条回答
叼着烟拽天下
2楼-- · 2019-02-12 22:54

Please don't use ssl or secure socket layer in your host.Please remove the host and try.simply like

host: 'smtpout.secureserver.net'

查看更多
太酷不给撩
3楼-- · 2019-02-12 22:58

The error is being shown because the host cannot be resolved i.e. because you are appending ssl:// to the host

As per the readme on the github link for nodemailer-smtp-transport your createTransport should be something like this for a secure connection

var transporter = nodemailer.createTransport({ 
    host: 'smtpout.secureserver.net', 
    port: 465, 
    auth: { user: 'Email address', pass: 'password' },
    secure: true
});

Give the above a shot, I think it should work just fine, if it is not working check your firewall/proxy setting.

查看更多
登录 后发表回答