重新发送的电子邮件验证链接未更改验证为真

时间:2016-02-06 12:17:44

标签: javascript node.js meteor meteor-accounts

我在我的流星应用程序中设置自定义身份验证系统。

当用户注册时,会向他们发送电子邮件验证链接。如果他们点击它,它会按预期将验证布尔值更改为true。

我在用户帐户设置页面中有一个按钮,允许他们在需要时重新发送验证邮件。单击此工作正常,他们会收到另一封包含不同链接的电子邮件。

点击此新链接后,它会重定向到主页,但不会验证电子邮件地址。

我的猜测是,用户帐户并不知道新令牌。

//server code
Meteor.methods({
  'sendVerificationEmail' : function(userId, primaryEmail){
    var userId = Meteor.user();
    Accounts.sendVerificationEmail(userId, primaryEmail, function (error) {
    if (! error) {
      return alert('Verfication email sent');
    } else {
      return alert(error);
      };
    });
  }
});

//Client code
Accounts.onEmailVerificationLink(function (token, done) {
  Accounts.verifyEmail(token, function (error) {
    if (! error) {
      console.log('Account verified');
      alert('Account verified');
    }

    done();
    // show something if there was an error.
  });
});

// Email verification route
Router.route('/verify-email/:token', {
  name: 'verifyEmail'
});

0 个答案:

没有答案