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

Mab*_*eek 7 meteor

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

在此输入图像描述

我知道这是我的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";
});
Run Code Online (Sandbox Code Playgroud)

我想你可以完全忽略smtp上面的对象,因为我必须手动更改process.env.MAIL_URL变量,因为我之前有另一个错误.整个过程在我的本地计算机/ localhost上设置.

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

对此有任何帮助非常感谢.

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

小智 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;
});
Run Code Online (Sandbox Code Playgroud)

让我知道这是否有效