php 二进制 pdf文件怎么打开,如何从javascript中的二进制流打开并读取PDF

我在使用JavaScript读取二进制数据流时遇到了一些困难。如何从javascript中的二进制流打开并读取PDF

目前,一个窗口弹出并打开并显示无法加载PDF文档。 我会在下面发布我的回复和代码,任何帮助将不胜感激。

这里是我的后端PHP:

function getPDF() {

$file = __DIR__.'\..\pdf\FAS_HeadedPaper.pdf';

header("Content-Length: " . filesize ($file));

header("Content-type: application/octet-stream");

header("Content-disposition: attachment; filename=".basename($file));

header('Expires: 0');

header('Cache-Control: must-revalidate, post-check=0, pre-check=0');

ob_clean();

flush();

readfile($file);

}

这里是我的前端JavaScript的控制器:

$scope.sendRef = function(ref){

$http({

method: 'GET',

url: $scope.endpoint + 'attachments/PDF',

async: true,

headers: {

'Authorization': 'MyToken'

},

params: {

ref: ref

},

dataType:'blob'

})

.success(function (data) {

console.log(data);

var file = new Blob([(data['response'])], {type: 'application/pdf'});

//var file = data['response'];

var fileURL = URL.createObjectURL(file);

window.open(fileURL);

$scope.content = $sce.trustAsResourceUrl(fileURL);

})

.error(function (data, status) {

console.log('Error: ' + status);

console.log(data);

});

}

这只是我在控制台中看到我的浏览器的响应的片段:

%PDF-1.5

%����

1 0 obj

<>>>

endobj

2 0 obj

<>

endobj

3 0 obj

<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.32 841.92] /Contents 4 0 R/Group<>/Tabs/S/StructParents 0>>

endobj

4 0 obj

<>

stream

x��V[O�X~���p�V>��eUU[B

�J�B���J�-�S�H���� -��Y�������'۴�E1k����۶-f7��]��z�%�~ߔ�E�\UE���7o��ɘO����dR�0l�$�'�v,

V��z8 �PL�����e�r����pp�E6.�6�0L�`�*

��e��LMd�ڛb�i��~e%��X���\�l:C~)P%=������\g7+14)^��} ����~�+.m��2"-�w�Q��? KZKP��Su�=���

2016-07-13

Tfish

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值