2013-03-06 81 views
3

我想從流星JS發送電子郵件,並採取了最簡單的方法在文檔中找到。然而,發送失敗,我得到了下面的堆棧跟蹤:MeteorJS電子郵件配置SSL

Exception while invoking method 'sendEmail' Error: connect ETIMEDOUT 
at Object.Future.wait (/usr/lib64/meteor/lib/node_modules/fibers/future.js:322:15) 
at smtpSend (app/packages/email/email.js:69:43) 
at Object.Email.send (app/packages/email/email.js:111:7) 
at Meteor.methods.sendEmail (app/server/email.js:7:11) 
at _.extend.protocol_handlers.method.exception (app/packages/livedata/livedata_server.js:593:30) 
at _.extend.withValue (app/packages/meteor/dynamics_nodejs.js:33:19) 
at app/packages/livedata/livedata_server.js:592:46 
at _.extend.withValue (app/packages/meteor/dynamics_nodejs.js:33:19) 
at _.extend.protocol_handlers.method (app/packages/livedata/livedata_server.js:591:37) 
at _.extend.processMessage.processNext (app/packages/livedata/livedata_server.js:484:43) 
- - - - - 
at errnoException (net.js:770:11) 
at Object.afterConnect [as oncomplete] (net.js:761:19) 

我通過這行提供在服務器文件夾bootstrap.js我的電子郵件設置:

process.env.MAIL_URL = "smtp://[email protected]:[email protected]:465" 

我敢肯定,我也有打開SSL的某處,但我不知道如何(我可以單獨使用Node的email.js)。

+1

請添加爲以防別人你自己的答案過來對太 – Akshat 2013-03-12 10:35:47

+0

我得到了同樣的錯誤,但我的問題是,我的企業防火牆擋住端口25交換端口587解決了超時問題。此命令可用於測試與SMTP服務器和端口的連接:'nc email-smtp.us-east-1.amazonaws.com 587' – Leons 2015-08-20 19:27:32

回答

1

發現它我自己 - 它不是沒有設置SSL選項,而是MAIL_URL中的第一個「@ gmail.com」。正確的路線是:

process.env.MAIL_URL = "smtp://user:[email protected]:465" 
+0

來自原始問題。 – jacksondc 2014-07-21 22:38:52

+0

使用@ gmail.com沒有錯(有時不可避免的,例如在google aps的情況下),但是您必須對第一個@進行網址編碼。 – Ruby 2015-06-15 02:20:04