如何在登录时验证用户凭据?

时间:2016-11-23 01:17:56

标签: mongodb meteor

我创建了一个带有一个用户名和密码的虚拟集合,用于测试目的。如果信息合适,我想检查一下是否可以成功登录。

我将会话中的用户输入存储如下:

Template.contactus.events({
      'submit #hr-login': function (e, t) {

        e.preventDefault();

        Session.set('username', t.find('#username').value);
        Session.set('password', t.find('#password').value);

        Router.go('/message');

      }
});

我尝试了以下代码:

     var check = hr.findOne({username: Session.get('username'), pass: Session.get('password')});
if(check){
    Router.go('/message');
}

不幸的是,它并没有为我解决。

如何检查用户输入是否正确并且与集合中的用户名和密码相匹配?

更新

我知道accounts-uiaccounts-password个套餐,但由于我的项目要求,我无法使用它们

2 个答案:

答案 0 :(得分:2)

我不确定您是否了解Meteor帐户包 - 您可以更轻松地使用它。它还提供Facebook / Google登录和许多其他功能,几乎都是开箱即用的。

https://guide.meteor.com/accounts.html

您可以安装一些软件包来完成大部分工作

答案 1 :(得分:1)

我认为您可以使用accounts-password,而不是为管理员和员工制作不同的集合,因此有一个非常有用的软件包alanning:roles您可以通过meteor add alanning:roles

转到此github链接以获取文档和用法。 https://github.com/alanning/meteor-roles