我正在使用express处理与我的postgres数据库的连接。我在前端使用React JS。数据可以很好地写入数据库,但是每次插入后我都必须重新启动服务器,因为会出现“ Write after end”错误。这是我认为是导致问题的server.js文件的一部分:
pool.connect((err, db, done) => {
if(err) {
return response.status(400).send(err);
} else {
db.query('INSERT INTO news (headline, date, content, images, id, snippet, author) VALUES($1, $2, $3, $4, $5, $6, $7)',[...values], (err, table) => {
done();
if (err) {
return response.status(400).send(err);
} else {
console.log('DATA INSERTED');
db.end();
}
})
}
})
请让我知道您对如何处理此问题的想法。
答案 0 :(得分:0)
因此,问题似乎出在“ db.end()”部分。一旦删除并添加了respsonse.status(201),错误就会消失。这是我更新的代码:
pool.connect((err, db, done) => {
if(err) {
return response.status(400).send(err);
} else {
db.query('INSERT INTO news (headline, date, content, images, id, snippet, author) VALUES($1, $2, $3, $4, $5, $6, $7)',[...values], (err, table) => {
done();
if (err) {
return response.status(400).send(err);
} else {
return response.status(201).send(`Data Inserted`);
}
})
}
})