【发布时间】:2018-02-06 01:58:36
【问题描述】:
我想使用 PHP 从浏览器中的 REST 服务的 URL 打开一个 pdf 文件,但该文件没有打开。 Chrome 说,“无法加载 PDF 文档”。但在 Firefox 和 Edge 中可以正常工作。
这是我的 print.php
<?php
header("Pragma: public"); // required
header('Content-Type: application/pdf');
header('Accept-Ranges: bytes');
header('Content-Transfer-Encoding: binary');
$data = ...; //definition of my json object
$baseUrl = 'http://www.website.com:8080/report/api/something/';
$newUrl = $baseUrl .'path';
$additional_headers = array(
'Content-Type: application/json',
);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $additional_headers);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$server_output = curl_exec($ch);
echo $server_output;
?>
更新
我注意到,当我的报告中的记录数量超过一定数量时会发生这种情况(始终在 chrome 中,其他浏览器可以正常工作)。但是我还是解决不了问题。
【问题讨论】:
标签: php google-chrome pdf