Accounts.forgotPassword /电子邮件错误:“forgotPassword”错误:问候语从未收到过

时间:2016-01-28 22:08:20

标签: meteor

所以我没有使用通用的Accounts-ui包,而是正在配置密码恢复系统。到目前为止,非常好......直到下面的错误出现:

enter image description here

我知道/sever/smtp.js中我的smtp设置错误,如下所示:

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变量,因为我之前有另一个错误。整个过程在我的本地计算机/ localhost上设置。

我之前有端口465,但是找不到用户名和密码时出错。我改为端口25,这个过程一直有效,直到我收到这个错误,说从未收到过问候语。

非常感谢任何帮助。

编辑:我还想补充一点,添加电子邮件包和更改端口会混淆Accounts.createUser功能,除非我从服务器上删除smtp设置,否则Meteor无法创建用户。 / p>

3 个答案:

答案 0 :(得分:2)

我是流星的诺布,但下面的确适合我。

Meteor.startup(function () {
  smtp = {
    username: 'myEmail',   // eg: myEmail@gmail.com
    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;
});

让我知道这是否有效

答案 1 :(得分:2)

我不确定这是否有帮助但是:

您可以使用@代替%40

答案 2 :(得分:2)

这是我在localhost和Digital Ocean中的工作

/*Send Email Through Gmail SMTP*/
process.env.MAIL_URL="smtp://gmailUsername:gmailPassword@smtp.gmail.com:587";

如果您仍有问候语,请告诉我

无论如何,您不需要Meteor.startup。您只需将它放在服务器文件夹的某个位置即可。例如:server/email.js