2016-01-28 30 views
7

所以我沒有使用通用的Accounts-ui軟件包,而是配置了密碼恢復系統。到目前爲止,一切都很好......直到下面的錯誤出現了:Accounts.forgotPassword/Email錯誤:「忘記密碼」錯誤:從未收到問候

enter image description here

我知道這是我的SMTP設置在/sever/smtp.js,其內容如下錯誤:

Meteor.startup(function() { 
    smtp = { 
    username: 'myEmail%40gmail.com', 
    password: 'password', 
    server: 'smtp.gmail.com', 
    port: 25 
    } 

    process.env.MAIL_URL = 'smtp://myEmail%40gmail.com:' + encodeURIComponent('password') + "@smtp.gmail.com:25"; 
}); 

我猜您可以完全忽略上面的smtp對象,因爲我必須手動更改process.env.MAIL_URL變量,因爲在此之前我有另一個錯誤。整個過程在我的本地計算機/本地主機上進行設置。

在此之前,我有端口465,並且出現了未找到用戶名和密碼的錯誤。我改變了端口25,這個過程一直工作,直到我得到這個錯誤,說沒有收到問候。

任何幫助,這是非常讚賞。

編輯:我還想補充一點,將email包,改變了口攪亂Accounts.createUser功能,其中流星是無法創建一個用戶,除非我從服務器中刪除SMTP設置。

回答

2

我是流星的noob,但下面的確爲我工作。

Meteor.startup(function() { 
    smtp = { 
    username: 'myEmail', // eg: [email protected] 
    password: 'password, // eg: password for your email 
    server: 'smtp.gmail.com', // gmail smtp 
    port: 25 
    } 

    process.env.MAIL_URL = 'smtp://' + encodeURIComponent(smtp.username) + ':' + encodeURIComponent(smtp.password) + '@' + encodeURIComponent(smtp.server) + ':' + smtp.port; 
}); 

讓我知道如果這個工作

+0

感謝您的評論。但我仍然得到相同的「問候從未收到」的錯誤。 –

2

我不知道如果這有助於但是:

可以使用@代替%40

2

這是我的工作在本地主機, Digital Ocean

/*Send Email Through Gmail SMTP*/ 
process.env.MAIL_URL="smtp://gmailUsername:[email protected]:587"; 

讓我知道如果你sti會有問候問題

無論如何,你不需要Meteor.startup。你只需要把它放在你的服務器文件夾的某個地方。例如:server/email.js