如何在使用angular js从byte []创建Bolb对象时提及文件名和URL

时间:2015-06-19 12:06:55

标签: angularjs web-services

我正在使用angular来访问返回ResponseEntity字节数组的其他API,例如return new ResponseEntity<byte[]>(pdf, headers, HttpStatus.OK);

我在前面的代码如下所示How to read pdf stream in angularjs

$http.post("http://localhost/app/report/csd/" + projectId, obj, {responseType: 'arraybuffer'})
            .success(function (data, status, headers, config) {
                var file = new Blob([data], {type: 'application/pdf'});
                var fileURL = URL.createObjectURL(file);
                $window.open(fileURL);
            })
            .error(function (err) {
                callback.error(err);
            });
    },

}

文件名在Rest Api中设置为标题,并返回响应,如下所示:

 headers.add("Content-Disposition", new StringBuilder("inline; filename=\"").append("report.pdf").append("\"").toString());

我希望上面的文件名设置为Bolb对象,地址栏中的新窗口URL应该是post请求的URL。 因此,在$window.open(fileURL)调用后,地址栏应显示URL为 http://localhost/app/report/csd/ {{project_id}}和生成的文件应该是name:report.pdf。

目前网址为blob:http%3A//localhost%3A8080/88506783-779c-4525-bdc3-329029d23257",文件名称为 88506783-779c-4525-bdc3-329029d23257.pdf 我怎样才能达到以上目的请帮忙!

0 个答案:

没有答案