Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client

Рейтинг: 0Ответов: 0Опубликовано: 20.03.2023

Всем здрасьте. Плз хелп. В коде (ниже) пытаюсь проверить есть ли юзер в БД. При этом: если юзера в БД нет, то отправляется ответом "ОК для добавления" и можно спокойно отправлять следующий запрос. Если же юзер существует, то последующие запросы блокируются и выводится ответ из темы сабжа. Почему ? :((

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');        
    });    
});

Ответы

Ответов пока нет.