Javascript 如何在AngularJS中连接jsReport?

Javascript 如何在AngularJS中连接jsReport?,javascript,angularjs,report,jsreport,Javascript,Angularjs,Report,Jsreport,我现在对JSReport有个问题。。假设我已经有了一个API…我现在想要的是如何将它与使用AngularJS的客户端链接 如果我使用邮递员,它将返回一个pdf文件,这是我想要的。但我的问题是,当我使用angularjs发布它时,如何显示它是我的页面 我有这样一个代码: 控制器 $scope.Print = function () { authService.print().then(function(result){ var _result = resul

我现在对JSReport有个问题。。假设我已经有了一个API…我现在想要的是如何将它与使用AngularJS的客户端链接

如果我使用邮递员,它将返回一个pdf文件,这是我想要的。但我的问题是,当我使用angularjs发布它时,如何显示它是我的页面

我有这样一个代码:

控制器

$scope.Print = function () {
        authService.print().then(function(result){
            var _result = result;
        });
    };
var parameter = { "template": { "shortid": "ZkMoslfdX" }};
        PrintService.Print(parameter).then(function (result) {
            var file = new Blob([result.data], { type: 'application/pdf' });
            var fileURL = URL.createObjectURL(file);
            $scope.content = $sce.trustAsResourceUrl(fileURL);
        });
服务

var _print = function () {
        var data = { "template": { "shortid": "byQtwHLPQ" } };
        return $http.post("http://192.168.8.87/api/report", data).then(function (result) {
            return result;
        });
    };

authServiceFactory.print = _print;
var reportUrl = "http://192.168.8.87/api/report";
    var _print = function (parameter) {
        return $http.post(reportUrl, parameter, { responseType: 'arraybuffer' }).success(function (response) {
            return response;
        });
    };
现在我有了代码,但它不起作用。。。我假设它没有回报,所以我删除了回报,只是张贴,但它仍然没有工作,甚至下载pdf也没有工作

任何人都可以帮忙…

像这样使用

控制器

$scope.Print = function () {
        authService.print().then(function(result){
            var _result = result;
        });
    };
var parameter = { "template": { "shortid": "ZkMoslfdX" }};
        PrintService.Print(parameter).then(function (result) {
            var file = new Blob([result.data], { type: 'application/pdf' });
            var fileURL = URL.createObjectURL(file);
            $scope.content = $sce.trustAsResourceUrl(fileURL);
        });
服务

var _print = function () {
        var data = { "template": { "shortid": "byQtwHLPQ" } };
        return $http.post("http://192.168.8.87/api/report", data).then(function (result) {
            return result;
        });
    };

authServiceFactory.print = _print;
var reportUrl = "http://192.168.8.87/api/report";
    var _print = function (parameter) {
        return $http.post(reportUrl, parameter, { responseType: 'arraybuffer' }).success(function (response) {
            return response;
        });
    };
其主要思想是将
结果.data
转换为一个blob,并创建一个
对象URL
,这样它就可读,并且可以访问
对象
标记和
$sce.trustAsResourceUrl
用于信任
URL

HTML

<object data="{{content}}" type="application/pdf" style="width:100%;height:80%"></object>


我参考这篇文章来澄清,只是读了那篇

您是如何创建报告的?