при запуске маршрута входа в систему токен генерируется успешно, но выдает ошибку, когда функция UserSession.create запускается для сохранения сеанса в базе данных и отображает сообщение об успешном завершении, а ошибка:
throw er; // Необработанное событие «ошибка» ^
Ошибка [ERR_HTTP_HEADERS_SENT]: невозможно установить заголовки после их отправки клиенту
User.findOne({
$or: [{ user_name: req.body.user_name }, { email: req.body.email }],
})
.then((user) => {
if (user) {
if (bcrypt.compareSync(req.body.password, user.password)) {
const payload = {
_id: user._id,
user_name: user.user_name,
first_name: user.first_name,
last_name: user.last_name,
email: user.email,
};
payload.userId = user._id;
UserSession.create(payload, (err, doc) => {
if (err) {
console.log(err);
return res.send({
success: false,
message: "Error : server Error",
});
}
return res.send({
success: true,
message: "Valid Sign In",
token: doc._id,
});
});
let token = jwt.sign(payload, process.env.SECRET_KEY, {
expiresIn: 1440,
});
res.send(token);
} else {
res.json({ error: "Invalid Password" });
}
} else {
res.json({ error: "User does not exist" });
}
})
.catch((err) => {
res.send("error: " + err);
});
});