Node.js-使用pdfkit将PDF作为BLOB存储并检索到MySQL
我很难将PDF内容以BLOB的形式存储到MySQL,并从MySQL中检索回来,然后使用Node.JS将其流式传输到前端 我能够将某些内容保存到数据库中(但不确定是否以正确的方式保存了正确的PDF内容)。当我检索pdf数据时,它不会在pdf阅读器中打开。我尝试将检索到的数据写入一个文件,但它似乎也不起作用。很明显,要么我没有将正确的数据存储到MySQL,要么我没有以正确的方式检索数据 如果你遇到过类似的情况,有人能帮我一下吗 已附上代码供您参考 非常感谢Node.js-使用pdfkit将PDF作为BLOB存储并检索到MySQL,mysql,node.js,blob,pdfkit,node-pdfkit,Mysql,Node.js,Blob,Pdfkit,Node Pdfkit,我很难将PDF内容以BLOB的形式存储到MySQL,并从MySQL中检索回来,然后使用Node.JS将其流式传输到前端 我能够将某些内容保存到数据库中(但不确定是否以正确的方式保存了正确的PDF内容)。当我检索pdf数据时,它不会在pdf阅读器中打开。我尝试将检索到的数据写入一个文件,但它似乎也不起作用。很明显,要么我没有将正确的数据存储到MySQL,要么我没有以正确的方式检索数据 如果你遇到过类似的情况,有人能帮我一下吗 已附上代码供您参考 非常感谢 var PDFDocument = req
var PDFDocument = require('pdfkit');
var doc = new PDFDocument;
var buffers = [];
doc.on('data', function(buff) {
buffers.push(buff);
});
doc.on('end', function () {
var queryToExec = "insert pdf_contents SET ? ";
var values = {
id : 0,//Auto Incrementing column
pdf: buffers.toString()
};
mysqlConnection.query(queryToExec, values, function(err, rows) {
if(!err) {
console.log("Stored to db successfully");
var selQuery = "select pdf from pdf_contents order by id desc limit 1"
mysqlConnection.query(selQuery, function(err_2, rows_2) {
if(!err_2) {
var myPdfDoc = rows_2[0].pdf;
console.log("Retrieved successfully, but pdf could not be opened!");
} else {
console.log("Error : ", err_2.toString());
}
});
} else {
console.log("Error : ", err.toString());
}
});
});
doc.addPage().text('Some text...', 100, 100);
doc.end();
不要将文件保存在数据库中。但在我的例子中,我在4个不同的服务器上运行我的node js应用程序,通过Nginx作为面对面服务器进行负载平衡。每个节点js应用服务器将访问一个MySQL服务器,但是,应用服务器将无法相互访问。所以,在我的例子中,我不能将任何东西存储为文件,因为这样做可能会使事情变得复杂(比如查找哪个文件驻留在哪个服务器上)!这类场景的任何解决方案。感谢您的回复。不要将文件保存在数据库中。但在我的例子中,我在4个不同的服务器上运行我的node js应用程序,通过Nginx作为面对面服务器进行负载平衡。每个节点js应用服务器将访问一个MySQL服务器,但是,应用服务器将无法相互访问。所以,在我的例子中,我不能将任何东西存储为文件,因为这样做可能会使事情变得复杂(比如查找哪个文件驻留在哪个服务器上)!这类场景的任何解决方案。谢谢你的回复。