Я пытаюсь создать веб-приложение с помощью MEAN, в котором я пытаюсь аутентифицировать пользователей с паролями, которые они создали во время регистрации. Ниже показано, как выглядит мой signin.html.
<div ng-controller ="MoviesSignCtrl">
UserName</br>
<input type="text" ng-model="movie.username" placeholder="Username">
</br>
</br>Password</br>
<input type="password" ng-model="movie.password" placeholder="Password">
</br></br>
<input type="button" value="Login" ng-click="signFunction()">
</div>
Я использую restangular для подключения моих angularjs и node api
Ниже мой контроллер angularjs
angular.module('clientApp')
.controller('MovieEditCtrl', function (
$scope,
$routeParams,
Movie,
$location
) {
$scope.movie = {};
Movie.one($routeParams.id).get().then(function(movie) {
$scope.movie = movie;
$scope.signFunction = function() {
if($scope.movie.username.then(function() {
$location.path('/movie/' + $routeParams.id);
});
};
});
});
Но я знаю, что эта логика неверна, может кто-нибудь объяснить мне, как проверить, существует ли пользователь в базе данных или нет, а затем проверить, совпадает ли пароль с именем в базе данных.
Ваша логика неясна. Вам действительно нужно отправить объект userAuthorization на ваш сервер, содержащий имя пользователя и пароль. Затем вы проверяете, совпадает ли имя пользователя/пароль, что в db. Если они совпадают, вы отправляете обратно все, что захотите, от вызова к интерфейсу, если они не совпадают, вы отправляете обратно несанкционированную ошибку и обрабатываете ее в части ошибки обещания на лицевой стороне.
Итак, отправьте три вещи в бэкэнд - фильм (ваша конечная точка), movieId (ваш стандартный идентификатор для вызова REST), объект userAuthorization (объект, содержащий имя пользователя и пароль).
В целом, это плохой способ сделать безопасность в целом, но я не буду вникать в это, поскольку я понимаю, что вы пытаетесь справиться с этим в основном.