Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
Всем здрасьте. Плз хелп. В коде (ниже) пытаюсь проверить есть ли юзер в БД. При этом: если юзера в БД нет, то отправляется ответом "ОК для добавления" и можно спокойно отправлять следующий запрос. Если же юзер существует, то последующие запросы блокируются и выводится ответ из темы сабжа. Почему ? :((
app.post("/auth/register", async (req, res) => {
const password = req.body.password;
const salt = await bcrypt.genSalt(10);
const hashPassword = await bcrypt.hash(password, salt);
const dbParams = {
host: "localhost",
user: "root",
database: "blog_voyages",
password: "",
};
const connection = mysql.createConnection(dbParams);
connection.connect(function (err) {
if (err) {
return console.error("Error: " + err.message);
} else {
console.log("Connected to DB");
}
});
await connection.execute("SELECT * FROM `utilisateurs`", (err, rows) => {
rows.forEach(row => {
if (row.login == req.body.login) {
res.json('User exists');
}
});
res.json('OK to add');
});
});
Источник: Stack Overflow на русском