我正在尝试使用Node.js,Express和Knex从PostgreSQL Db上传和检索PDF文件。
数据库列文档文件的文件类型为Bytea。
该文件似乎正在上载到数据库并返回。生成的PDF文件(test3.pdf)不想打开。我已经为此苦苦挣扎很长时间了。任何帮助将不胜感激!
Node.js代码上传文件:
app.get('/uploadfile', (req,res) =>{
fs.readFile('0203.pdf' function(err, imgData) {
console.log(imgData)
knex('documenttable').insert(
{documentname: '0203.pdf',
documentfile: [imgData]
})
.then( function (result) {
res.end(console.log("Document uploaded To DB"));
});
});
});
Node.js代码以检索文件:
app.get('/dbfileback', function(req, res, next) {
knex('documenttable').where({
documentnumber: '1'
}).select('documentname', 'documentfile')
.then( function (result) {
fs.writeFile('test3.pdf', result[0].documentfile,'binary');
res.end(console.log("Done"));
});
});