【发布时间】:2021-03-12 12:29:24
【问题描述】:
我正在尝试查询 MySQL 数据库并查看表中是否存在记录 如果确实如此,则在不插入表格的情况下呈现页面 如果没有,则使用另一个查询调用 MySQL 以写入表,然后呈现页面
我认为正在发生的是第一个 connection.query 运行,并且在它呈现页面之前,当记录存在时,它尝试插入到表中并出现以下错误,可能是由于尝试同时呈现但不是当然?任何有关解决此问题的帮助将不胜感激。
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client at ServerResponse.setHeader (_http_outgoing.js:558:11)
exports.follow = async (req, res) => {
try {
pool.getConnection(function (error, connection) {
if (error) {
console.log(error);
return;
}
connection.query(checkExists, async (error, results) => {
if (error)
throw error;
return res.status(200).render('search', {
});
})
connection.query(insertIfDoesNotExist, async (error, results) => {
if (error) throw error;
if (loggedin) {
return res.status(200).render('search', {
});
}
})
}
})
} catch (error) {
console.log(error);
}
}
【问题讨论】:
标签: javascript mysql node.js express connection