Вы получаете UnhandledPromiseRejectionWarning
, потому что вы не добавляете обработчик .catch
к getPosts()
getPosts()
.then(console.log)
.catch(console.error); // You're missing this
Или используя async/await
try {
const posts = await getPosts();
console.log(posts);
} catch(e) { // Missing this
console.error(e);
}
Нет необходимости добавлять try/catch
в функцию getPosts
, если вы собираетесь снова выдать ошибку без каких-либо изменений. Просто дайте ему всплыть и обработайте ошибку при вызове getPosts()
, как показано выше.
async function getPosts() {
const connection = await dbConnection()
const result = await connection.query('SELECT * FROM x')
await connection.release()
return result;
}
Что касается вашей текущей ошибки, вы пытаетесь выполнить запрос к несуществующей таблице.
Подробнее об этом вы можете узнать в следующем вопросе: Что такое необработанный отказ от обещания?