Я довольно новичок в узле и его семействе, извините за техническую ошибку, которую я допускаю при объяснении.
Я пишу вызов API, используя узел, который должен подключиться к базе данных sqllite и выполнить два запроса обновление и вставка.
Я хочу понять, как выполнить несколько запросов в одном API, захватить выходные данные для обоих и вернуть их в окончательном ответе
app.get("/processing/updateandcreate/query/:ProcessID", (req, res, next) => {
var resultFinal;
db.run( `UPDATE PROCESS set CurrentStatus = 'Query' where ProcessID=5`, {}, function (err,rows){
if (err){
res.status(400).json({"error": err.message})
return;
}
resultFinal = resultFinal + rows;
});
db.run(`INSERT INTO QUERY RecordID values('1')`, {}, function (err, res2) {
if (err){
res.status(400).json({"error": err.message})
return;
}
resultFinal = resultFinal + rows;
});
//I want to pass the result of both the queries here
res.json({
message:"Okay"
})
});
Эти команды сделали выполняется при тестировании API, но выдает эту ошибку:
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
Я думаю, что это, вероятно, происходит, когда мы пытаемся отправить несколько ответов.
Пожалуйста, помогите отсортировать это.
(я пишу get Call, в идеале этого не должно быть, но из-за некоторых проблем с конфигурацией мы можем выполнять только вызовы get для нашего приложения)