我正在使用nodemailer,https://github.com/andris9/Nodemailer

我尝试了该示例(更改了课程的电子邮件)。没用什么都不要安慰。 30-40秒后,我得到:

{ [Error: Connection timeout] code: 'ETIMEDOUT' }
Error: connect ETIMEDOUT
    at errnoException (net.js:904:11)
    at Object.afterConnect [as oncomplete] (net.js:895:19)


有什么提示可能是错误的吗?我该如何调试?

这是示例中的代码。我将其粘贴到server.js中,因此在应用启动时会触发。

var nodemailer = require('nodemailer');

// create reusable transporter object using SMTP transport
var transporter = nodemailer.createTransport({
    service: 'Gmail',
    auth: {
        user: '[email protected]',
        pass: 'userpass'
    }
});

// NB! No need to recreate the transporter object. You can use
// the same transporter object for all e-mails

// setup e-mail data with unicode symbols
var mailOptions = {
    from: 'Fred Foo ✔ <[email protected]>', // sender address
    to: '[email protected], [email protected]', // 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
transporter.sendMail(mailOptions, function(error, info){
    if(error){
        console.log(error);
    }else{
        console.log('Message sent: ' + info.response);
    }
});


更新资料
事实证明,我的公司已阻止了Google SMTP。因此,代码没有错。

最佳答案

Gmail的问题ix。如果您更改为另一封电子邮件,它将起作用:)

关于node.js - Nodemailer,连接超时,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25198731/

10-12 14:21