我已經創建了一個用於測試目的的帶有一個用戶名和密碼的虛擬集合。如果信息正確,我想檢查是否可以成功登錄。如何在登錄時驗證用戶憑證?
我存儲會話用戶輸入如下:
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');
}
不幸的是,它並沒有解決這個問題對我來說。
如何檢查用戶輸入是否正確並與集合中的用戶名和密碼相匹配?
UPDATE
我知道accounts-ui
和accounts-password
包,但由於我的項目要求,我不能使用它們
不知道我是否理解你。您是否正在嘗試構建自己的用戶帳戶系統,而不使用Meteor自帶的用戶帳戶系統? – Khang
@Khang,我想創建一個系統,其中將有多個存儲用戶帳戶的集合。例如,收集將存儲管理員的賬戶,另一個收集將存儲員工的賬戶等。如果我沒有弄錯,流星賬戶套餐限於一個集合。我不確定是否存在某些能夠幫助我處理規範的軟件包 –
這不是一項普通的任務,您需要修改Meteor的核心軟件包代碼,以將用戶的文檔存儲在不同的集合中,並仍然允許他們登錄。如果你確實需要這樣做,請從這個包開始:https://github.com/meteor/meteor/tree/devel/packages/accounts-base。 – Khang