【发布时间】:2013-05-21 13:43:50
【问题描述】:
我的节点服务器启动良好,运行良好,直到我尝试使用 emailjs 发送电子邮件... 抛出此异常:
error : code 5
error : previous { [Error: connect ECONNREFUSED]
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect' }
error : smtp undefined
我的代码:
var ES = require('./email-settings');
var EM = {};
module.exports = EM;
EM.server = require("emailjs/email").server.connect({
host : ES.host,
user : ES.user,
password : ES.password,
ssl : true,
port : 465
});
EM.dispatchResetPasswordLink = function(account, callback)
{
EM.server.send({
from : ES.sender,
to : account.email,
subject : 'Password Reset',
text : 'something went wrong... :(',
attachment : EM.composeEmail(account)
}, callback );
}
在电子邮件设置中,我定义了主机、用户、密码……它们不是未定义的。我的 smtp 服务器是 gmail。我必须定义任何其他设置吗?也许是为了我的 gmail 帐户? emailjs 使用端口 80 左右吗?我的应用在 8003 上运行
我正在寻找一个解决方案很长一段时间...谢谢帮助:)
【问题讨论】:
-
你能给我们代码,你在哪里定义主机、用户和密码。也许这就是错误所在。它应该遵循以下语法:用户:“testaccount@gmail.com”,密码:“testpassword”,主机:“smtp.gmail.com”,ssl:true
-
嘿,迈克尔,谢谢您的回复。这是我在电子邮件设置中的代码
module.exports = { host : 'smtp.gmail.com', user : 'myemail@gmail.com', password : 'secret', sender : 'firstname lastname <myemail@gmail.com>' } -
是的,这些定义似乎没问题。 Gmail 最近对这种 smtp 的东西非常严格。也许这就是原因。发送消息时登录您的帐户并重新加载浏览器几次。您应该会在顶部看到一个小弹出栏,然后在您的 gmail 帐户中,他们会询问您是否了解 smtp 或者它是否是黑客。也许他们甚至会要求您进行电话验证。
-
我也遇到了类似的问题,你遇到过这个大卫吗?