請原諒任何由於不熟悉本框架及其組件而導致的無知,我正在學習。向用戶註冊添加密碼
我已經建立了一個基本的應用程序angular-fullstack
,我正在探索一些我想知道如何去做的任務。具體來說,我想在用戶註冊過程中添加一個額外的表單元素,這樣不僅任何人都可以註冊,而且只有那些提供口頭共享的預定安全代碼的人才能註冊。如果輸入的代碼無效,則不應創建新用戶,並且(可選)將某些消息返回給用戶。
在我的server/config/environment/index.js
文件,我已經加入到我會用它來檢查的有效代碼secrets
關鍵的附加項目是進入
...
// Secret for session, you will want to change this and make it an environment variable
secrets: {
session: 'myapp-secret',
secretCode: 'my-secret' // pre-determined secret code
},
...
在我的形式,我添加了額外的領域和分配ng-model="secret"
。形式分給控制器的register
功能,所以我也是在新的輸入的值添加到被傳遞到Auth.createUser
參數:
$scope.register = function(form){
...
if (form.$valid) {
Auth.createUser({
name: $scope.user.name,
email: $scope.user.email,
password: $scope.user.password,
secret: $scope.secret // My input field to pass to the user controller
})
}
...
}
現在我可以進入的server/api/user/user.controller.js
的create
功能,包括我的邏輯檢查密碼。
/**
* Creates a new user
*/
exports.create = function(req, res, next) {
...
if (req.body.secret !== config.secrets.secretCode) {
// cancel creating a new user
};
...
};
我現在的問題是我怎麼來處理這個我if
語句中?在框架周圍窺探,似乎我可能只是做一個重定向或返回到/signup
頁面,幷包含錯誤消息,但我不知道我應該在這裏處理該問題。
我一直在從一些不同的角度看這個,我(據我所知)還沒有「啊哈」!我感到自信的時刻正在以正確的方式接近這一點。我是否以非常規的方式去解決這個問題?