res.send를 사용하여 데이터베이스의 모든 데이터를 다시 보내려고하지만 오류가 발생합니다. 내 프론트 엔드에서 끝점을 select
이라고하고 데이터베이스 내의 모든 행과 데이터를 반환하려고합니다. 후자의 기능 (res.send
의 첫 번째 사용이 실행 된 후 아무것도)Express 응답으로 개체를 보낼 수 없습니다.
app.get('/select', function (req, res) {
con.query('SELECT * FROM Contracts', function (err, rows, fields) {
if (err) {
console.log(`Error: ${err}`);
}
for (var i = 0; i < rows.length; i++) {
var row = rows[i];
res.write(row);
}
res.end(); //this finally sends the response
})
});
을 종료로
app.get('/select', function (req, res) {
con.query('SELECT * FROM Contracts', function (err, rows, fields) {
if (err) {
console.log(`Error: ${err}`);
}
for (var i = 0; i < rows.length; i++) {
var row = rows[i];
res.send(row);
}
})
});
for 루프에서 응답을 래핑하지 마십시오. 모든 행을 하나의 객체로 누적하여 한 번 보냅니다. –
전체'rows' 배열을 보내지 않는 이유는 무엇입니까? – Luca