Google Chrome 最近的更改改变了 PDF 文件的处理方式。我极度偏爱只下载 PDF 文件。然后,如果需要,我会在系统默认 PDF 查看器中打开该文件。
当我下载与特定设备相关的多份手册时,我不需要立即查看这些手册。我的目标是尽快将它们下载到本地存储中。
Chrome v56 不再允许完全禁用内置查看器。唯一的选择是转到“设置”->“内容”-> 勾选在系统默认 PDF 应用程序中打开 PDF 文件的框。
这不是我想要的。很简单,我根本不想让 PDF 文件自动打开。保存文件;不要打开文件。
我尝试过右键单击 PDF 文件的下载链接并选择“将链接另存为...”,但现在该行为也发生了变化。具体来说,大多数情况下,下载的是 URL 而不是 PDF 文件。
仅供参考 - 我的 Chrome 中的下载设置指向我的下载文件夹中的顶级目录,并且勾选了“询问下载文件保存位置”复选框。
有什么办法可以让 Chrome 恢复到以前的行为并将文件下载到本地存储?
答案1
该问题可能与网络服务器提供文件的方式有关。
某些服务器可能会Content-Disposition: attachment
在其响应中包含标头,从而导致 Chrome 在您单击下载链接时下载文件,而其他服务器可能会在其响应中跳过该标头,而由 Chrome 决定是否打开或下载文件。
更多详细信息请参见此处:
强制打开“另存为…”弹出窗口,在文本链接处打开,单击以 HTML 格式获取 PDF
我是否需要 Content-Type: application/octet-stream 来下载文件?
以下解决方案将下载所有 PDF 文件,包括用于在 Chrome 中查看的嵌入文件,例如这里和这里。但是,它不适用于使用PDF.js显示嵌入的 PDF 文件,如下所示在线演示。
Content-Disposition
动态添加或修改Content-Disposition: attachment
MIME 类型的标题application/pdf
应该有助于强制 Google Chrome 下载所有 PDF 文件。
您可以使用修改 Content-Type扩大。
答案2
现在有一个针对此情况的设置(版本 61):
去:chrome://settings/content
向下滚动到 PDF 文档部分并选择下载 PDF 文件的选项
不确定具体什么时候更改的。在版本 58 中,有一个类似的选项可以在默认查看器中打开 PDF 文件,但这在 Linux 中具有相同的效果(在其他平台上可能有所不同)。
答案3
对我来说解决方案是这样的:
chrome://settings/content/pdfDocuments
> 下载 PDF 文件,而不是在 Chrome 中自动打开它们 > 开启chrome://settings
> 高级 > 下载 > 下载后自动打开某些文件类型 > 点击“清除”
答案4
只需将浏览器更新到最新版本,问题就解决了。