в post express'а?
Есть функция-контроллер, она находится в 1 файле
export function loginProtect(data) {
// ищем в базе совпадения по имейлу
UserModel.findOne({ user_email: data.user_email }, function (err, user) {
if (err) return err;
// далее если совпадение нашлось сверяешь хэш пароль с тем что был прислан в функцию
bcrypt.compare(data.user_password, user.user_password, function (err, res) {
if (err) return err;
// res это результат работы, возвращает true или false
return res;
});
});
}
Есть post запрос который инит эту функцию, он находится во 2 файле
app.post('/api/login', (req, res) => {
const user = {
user_data: req.query
}
// отправляем данные в контроллер
UserController.loginProtect(req.query);
// вот всё что ниже должно исполняться на основе ответа из функции выше
jwt.sign({ user: user.user_data }, process.env.SECRET_FOR_JWT, (err, token) => {
res.json({
success: true,
token
})
})
});
Грузи на gist
return err...
Обсуждают сегодня