通过节点 js 调用 jasper report rest api

calling jasper report rest api through node js

我对 jasper 报告的概念非常陌生。我的团队已经在 jasperserver 中构建了一些报告。我唯一需要做的就是打电话给报告。从节点服务器。我尝试了来自 Jasper Rest API, run a report

的代码
 router.get('/', function(req, res, next) {

    request.post({url: "http://localhost:3030/jasperserver/rest/login", 
        qs: {j_username: "jasperadmin", j_password: "jasperadmin"}},
        function(err, res, body) {
            if(err) {
                return console.error(err);
            }
            else{
            request.get("http://localhost:3030/jasperserver/rest_v2/reports/SampleQueryReport.pdf",
                function (error, response, body1) {

                    if (!error) {
                          console.log("downloading")
                    }
                    else{
                        console.log(response.statusCode);
                        console.log(error);
                    }
            })
        }
    });


});

我想获取 pdf 格式的报告。但是当我尝试此代码时出现 401 未授权错误。 我正在使用 express js,node js, npm 模块请求,我在 app.js 中全局声明。 但是我可以通过 url.

使用此凭据直接登录到 jasper soft

我明白问题出在哪里了。它显示未经授权的错误,因为在第二个请求中它没有 cookie。也就是说,在第一次请求登录时会生成一个 cookie。哪个没有在第二个请求中传递。因此,当我通过该请求传递 cookie 时,它​​起作用了。我的错。