Я пытаюсь создать форму входа на свой сайт. Я использую agular, express и mongoDB
Вот мой контроллер функции входа в систему:
loginUser: (req, res) => {
User.findOne({
username: req.body.login_username
})
.then(user => {
bcrypt.compare(req.body.login_password, user.password)
.then(result => {
if (result) {
req.body.login_username = user.username
res.json({
message: "Success!",
added: true
});
} else {
console.log('Failed login attempt')
res.json({
message: "Error!",
error: err
});
}
}).catch(console.error, console.log(req.body.login_password, user.password))
})
}
и вот мои компоненты входа в систему:
userID: string;
userData: any;
loginUser: any;
error = "";
constructor(
private router: Router,
private route: ActivatedRoute,
private httpService: HttpService
) {}
ngOnInit() {
this.userID = this.route.snapshot.paramMap.get("id");
this.getSingleUser();
this.loginUser = { username: "", password: "" };
}
getSingleUser() {
let observable = this.httpService.getOneUser(this.userID);
observable.subscribe((data) => {
this.userData = data;
});
}
onSubmit() {
let observable = this.httpService.loginUser(this.loginUser);
observable.subscribe((data: any) => {
console.log("Wrong");
if (data.error) {
this.error = data.error.errors.name.message;
} else {
this.getSingleUser();
this.router.navigate([""]);
}
});
}
Когда Я нажимаю кнопку, и мой терминал получает такую ошибку:
undefined $ 2b $ 20 $ 8DmOjsDm3h5q / jEq9lNauezUdFYdL6EBt9gjmCu8 / 0DU0kAnSSIA2 Ошибка: данные и пользователи sh аргументы / требуются на Object.com / npareng /Desktop/personal_project/instagram/node_modules/bcrypt/bcrypt.js:208:17) в /Users/nhannguyen/Desktop/personal_project/instagram/node_modules/bcrypt/promises.js:29:12 в новом обещании ( ) в Object.module.exports.promise (/Users/nhannguyen/Desktop/personal_project/instagram/node_modules/bcrypt/promises.js:20:12) в Object.compare (/ Users / nhannguyen / Desktop / personal_project / instagram /node_modules/bcrypt/bcrypt.js:204:25) в /Users/nhannguyen/Desktop/personal_project/instagram/server/controllers/users.js:65:24 в processTicksAndRejection (internal / process / task_queues. js: 97: 5)