1

我无法将 PDF 内容作为 BLOB 存储到 MySQL 并从 MySQL 检索它并使用 Node.JS 将其流式传输到前端。

我能够将某些内容保存到数据库中(但不确定我是否以正确的方式保存了正确的 PDF 内容)。当我检索 pdf 数据时,它不会在 PDF 阅读器中打开。我尝试将检索到的数据写入文件,但它似乎也不起作用。清楚要么我没有将正确的数据存储到 MySQL,要么我没有以正确的方式检索它。

如果您遇到类似的情况,有人可以帮助我。

已附上代码供您参考。

非常感谢。

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

0 回答 0