Я пытаюсь создать систему аутентификации с использованием Hapi и MySQL, я тестирую ее с помощью почтальона и также регистрирую вывод запроса на терминальной консоли.
Дело в том, что консоль успешно выводит запрос, однако почтальон возвращает An internal server error occurred
, и консоль не возвращает никаких ошибок. Я отправлю функцию обработчика моего маршрута, найденную ниже:
handler: async function(req, h) {
const pass = req.payload.password;
const username = req.payload.username;
var res;
res = await con.query("SELECT * FROM `Person` WHERE `Username` = ?", username,
(err, rows, fields) => {
if(err) {
console.log("Query Error: ", err, "!");
return err;
} else {
console.log("Query Successful!");
const person = JSON.parse(JSON.stringify(rows[0]));
console.log(person);
if(person != null) {
//const hashedPass = crypto.pbkdf2Sync(req.payload.password, person.salt, 10000, 64, 'sha1').toString('base64');
if(pass != person.Password) {
return boom.badRequest('Invalid username/password.');
} else {
var token = jwt.sign(person, config.jwtKey);
person.token = token;
return person;
}
} else {
return boom.badRequest('Invalid username/password. Failed.');
}
}
}
);
return res;
}