IE忽略八位字节流 - 如何强制下载?

时间:2013-05-02 18:37:53

标签: pdf-generation wkhtmltopdf

我正在使用wkhtmltopdf生成PDF文件。该程序接受两个ContentType值之一,'application / pdf'和'application / octet-stream'。我希望生成的PDF文件保存到用户的机器上,因此我将其设置为'application / octet-stream'。正如预期的那样,Chrome提示下载。 FireFox也是如此。当然,Internet Explorer忽略了此设置,而是在浏览器窗口中打开PDF文件。我正在使用Internet Explorer 8和9进行测试。我无权访问服务器,并且我不想在任何情况下更改所有PDF文件的处理方式。我希望这个应用程序提示用户下载文件,并且需要知道如何强制IE执行此操作而不是忽略ContentType值。

我使用Fiddler2查看在IE和Chrome中如何报告ContentType,并且都显示'application / octet-stream',所以我不确定IE为何坚持在浏览器中呈现PDF。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

PHP代码:

header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: public");
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"filename\"");  

这应该有用。