Node.js 如何在项目文件夹节点Jasper Reports中保存生成的pdf?

Node.js 如何在项目文件夹节点Jasper Reports中保存生成的pdf?,node.js,jasper-reports,Node.js,Jasper Reports,我正在使用一个名为。Pdf也通过动态传递的参数生成。我想将该文件保存在项目文件夹中。有人能帮我如何做到这一点吗?下面是鹬 exports.jasperdemo = (req, res) => { console.log(req.body) var report = { report: 'hw', data: { parameter1: req.body.parameter1, parameter

我正在使用一个名为。Pdf也通过动态传递的参数生成。我想将该文件保存在项目文件夹中。有人能帮我如何做到这一点吗?下面是鹬

exports.jasperdemo = (req, res) => {
    console.log(req.body)
    var report = {
        report: 'hw',
        data: {
            parameter1: req.body.parameter1,
            parameter2: req.body.parameter2
        },
    }
    var pdf = jasper.pdf(report);
    res.set({
        'Content-type': 'application/pdf',
        'Content-Length': pdf.length
    });
    fs.writeFile("Test.pdf",res.body);
    res.send(pdf)
}

您只需在
fs.writeFile()函数中的文件名之前添加目录即可:

exports.jasperdemo = (req, res) => {
        console.log(req.body)
        var report = {
            report: 'hw',
            data: {
                parameter1: req.body.parameter1,
                parameter2: req.body.parameter2
            },
        }
        var pdf = jasper.pdf(report);
        res.set({
            'Content-type': 'application/pdf',
            'Content-Length': pdf.length
        });
        // Added your change here
        fs.writeFile("./your/directory/Test.pdf",res.body);
        res.send(pdf)
    }

使用
newbuffer(pdf,“binary”)
创建二进制数据的缓冲区,并传递它而不是res.body查找附加的代码

 exports.jasperdemo = (req, res, next) => {

        var report = {
            report: 'hw',
            data: {
                 parameter1: req.body.parameter1,
                 parameter2: req.body.parameter2
            }
        }

        var pdf = jasper.pdf(report);

        res.set({
            'Content-type': 'application/pdf',
            'Content-Length': pdf.length
        });

            fs.writeFile("./reports/Test.pdf",new Buffer(pdf, 'binary'), ()=>{
            console.log('successful');
        });
        res.send(pdf)

    }

Brother现在我可以将文件保存在文件夹中,但现在它给了我一个错误-加载PDF文档失败。生成时PDF已损坏。JSON中的一个错误位于
data:{}
,因为在最后一个大括号后有一个逗号,引擎认为会有另一个属性,但没有。