【发布时间】:2021-08-09 22:53:58
【问题描述】:
我正在尝试使用 node-pg、multer 和 papa parse 将 csv 文件中的多行添加到我的 postgres 数据库中。我尝试了以下方法:
const createTrackingCSV = (request, response) => {
// storing the csv file using multer memoryStorage()
let upload = multer({ storage: multer.memoryStorage(), fileFilter: fileFilter }).single('fileUploaded');
upload(request, response, function(err) {
var results = Papa.parse(String(request.file.buffer), {
header: true
});
var uploadObj = results.data;
uploadObj.forEach(function(obj) {
pool.query('INSERT INTO tracking (col1, col2) VALUES ($1, $2)', [obj.test1, obj.test2], (error, results) => {
if(error) {
console.log(error);
response.sendStatus(500);
return;
}
})
});
response.status(201).send('Successfully inserted');
});
}
当我尝试插入 csv 文件的内容时,这种方法会导致以下错误:
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
我犯了什么错误/是否有其他方法可以尝试将 csv 文件中的多行插入数据库?
【问题讨论】:
标签: javascript node.js postgresql multer