我正在使用nodemailer模块从我的nodejs应用程序发送邮件。 我收到错误:连接ETIMEDOUT xxx.xxx.xx.xxx:465 。任何人都可以帮我解决这个问题。 我在这里粘贴我的代码。
var transporter = nodemailer.createTransport({
service: 'Gmail',
auth: {
user: 'my_mail_id@gmail.com',
pass: 'my_gmail_password'
}
});
console.log('created');
transporter.sendMail({
from: 'my_mail_id@gmail.com',
to: 'my_mail_id@gmail.com',
subject: 'hello world!',
text: 'hello world!'
});
答案 0 :(得分:0)
// Create a SMTP transport object
var transport = nodemailer.createTransport("SMTP", {
service: 'Hotmail',
auth: {
user: "username",
pass: "paasweord"
}
});
console.log('SMTP Configured');
// Message object
var message = {
// sender info
from: 'abc@hotmail.com',
// Comma separated list of recipients
to: req.query.to //'aadityashukla9@hotmail.com',
// Subject of the message
subject:req.query.subject //'Nodemailer is unicode friendly ✔',
// plaintext body
text: req.query.text //'Hello to myself!',
// HTML body
/* html:'<p><b>Hello</b> to myself <img src="cid:note@node"/></p>'+
'<p>Here\'s a nyan cat for you as an embedded attachment:<br/></p>'*/
};
console.log('Sending Mail');
transport.sendMail(message, function(error){
if(error){
console.log('Error occured');
console.log(error.message);
return;
}
console.log('Message sent successfully!');
//transport.close(); // close the connection pool
});
答案 1 :(得分:0)
我今天遇到了同样的问题,发现了这个文档...
https://nodemailer.com/usage/using-gmail/
通过登录gmail时访问网址,必须从服务器执行capcha流程。
希望它可以帮助他人。
答案 2 :(得分:0)
出现此错误的唯一原因是:
安全性较低的应用:您必须从Gmail帐户启用“安全性较低的应用”。
使用OAuth
答案 3 :(得分:0)
除了已经提到的https://nodemailer.com/usage/using-gmail/信息的引用外,在我的情况下,互联网路由器(Speedport W724V)仍然存在问题。这将保留所有允许的SMTP服务器的列表。在我相应地扩展了列表之后,它完美地工作了。我必须对smtp.ethereal.email做同样的事情。
答案 4 :(得分:0)
这可能是防火墙问题。我在Ubuntu(Digital Ocean服务器)中遇到了类似的问题。尝试将问题修复3天,还尝试使用auth2,使用ufw inactive命令对不活动的防火墙进行了尝试,但是没有运气。最终,我检查了Digital Ocean管理面板并为Droplet创建了防火墙。通过在防火墙设置中启用TCP入站和出站,可以解决问题。