ell*_*boa 191 browser embed pdf embedding http-headers
当取消选中"在浏览器中显示PDF"选项时,有没有办法强制PDF文件在浏览器中打开?
我尝试使用embed标签和iframe,但只有在选中该选项时才有效.
我能做什么?
Col*_*inM 381
要向浏览器指示应在浏览器中查看该文件:
Content-Type: application/pdf
Content-Disposition: inline; filename="filename.pdf"
Run Code Online (Sandbox Code Playgroud)
要下载文件而不是查看文件:
Content-Type: application/pdf
Content-Disposition: attachment; filename="filename.pdf"
Run Code Online (Sandbox Code Playgroud)
如果文件名包含特殊字符,则需要文件名周围的引号filename[1].pdf,否则可能会破坏浏览器处理响应的能力.
Aks*_*hay 20
如果你正在使用HTML5(我想现在每个人都使用它),就会有一个名为的属性download.
例如,
<a href="somepathto.pdf" download="filename">
Run Code Online (Sandbox Code Playgroud)
这filename是可选的,但如果提供,则下载文件将使用此名称.
Chr*_*ssy 15
正确的类型是application/pdfPDF,而不是application/force-download.这看起来像是一些传统浏览器的黑客攻击.如果可以,请始终使用正确的mimetype.
如果您可以控制服务器代码:
header("Content-Disposition", "attachment; filename=myfilename.myextension");header("Content-Disposition", "inline; filename=myfilename.myextension");无法控制服务器代码:
注意:我更喜欢在服务器端设置文件名,因为您可能有更多信息并且可以使用公共代码.
Kir*_*eck -17
如果您链接到 .PDF,它将在浏览器中打开。
如果未选中该框,它应该链接到 .zip 以强制下载。
如果 .zip 不是一个选项,则使用PHP 中的标头强制下载
header('Content-Type: application/force-download');
header('Content-Description: File Transfer');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
299420 次 |
| 最近记录: |