2016-01-28 7 views
7

Nie używam ogólnego pakietu Accounts-ui i konfiguruję system odzyskiwania haseł. Tak daleko, tak dobrze ... dopóki poniżej pojawił się błąd:Accounts.forgotPassword/Błąd e-mail: "forgotPassword" Błąd: Powitanie nigdy nie zostało odebrane

enter image description here

wiem, że to błąd z mojej konfiguracji SMTP w /sever/smtp.js, który brzmi tak:

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"; 
}); 

Chyba możesz całkowicie zignorować powyższy obiekt smtp, ponieważ musiałem ręcznie zmienić zmienną process.env.MAIL_URL, ponieważ wcześniej miałem inny błąd. Cały ten proces jest ustawiony na moim lokalnym komputerze/lokalnym hoście.

Miałem port 465 wcześniej i wystąpił błąd, gdy nazwa użytkownika i hasło nie zostały znalezione. Zmieniłem port na 25 i proces ten działał, dopóki nie dostałem tego błędu, mówiąc, że powitanie nigdy nie zostało odebrane.

Każda pomoc w tej sprawie jest bardzo doceniana.

Edytuj: Chciałbym również dodać, że dodanie pakietu wiadomości e-mail i zmiana portów powoduje uruchomienie funkcji Accounts.createUser, w której Meteor nie może utworzyć użytkownika, chyba że usunę konfigurację smtp z serwera.

Odpowiedz

2

Jestem noobem w Meteorze, ale poniżej zadziałało dla mnie.

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; 
}); 

Daj mi znać, jeśli to działało

+0

Dzięki za komentarz. Ale wciąż otrzymuję ten sam błąd "Powitanie nigdy nie otrzymał". –

2

Nie jestem pewien, czy to pomoże, ale:

Można użyć @ zamiast %40

2

Jest to praca ze mną w localhost i Cyfrowy ocean

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

Daj mi znać, jeśli znasz Mam problem z powitaniem

W każdym razie nie potrzebujesz Meteor.startup. Musisz tylko umieścić go gdzieś w folderze na serwerze. Na przykład: server/email.js

Powiązane problemy