【问题标题】:Which file types can be viewed in browser (inline, without a plugin)可以在浏览器中查看哪些文件类型(内联,无需插件)
【发布时间】:2018-07-29 08:39:30
【问题描述】:

我只想知道哪些文件类型(如 .png、.pdf、.txt)可以在浏览器(如 Chrome、Firefox)中查看。因为有时当我点击文件链接时,它不会在浏览器中显示,而是自动下载。为什么会这样?下面是我的代码。任何帮助将不胜感激。

<script>

function openPDF(url){
   var w=window.open(url, '_blank');
   w.focus();
}

</script>
<a href="burger1.jpg" target='_blank'>link</a>
<div onclick="openPDF('1.pdf');">PDF 1</div>

【问题讨论】:

  • 有时下载是因为链接上存在download 属性。
  • 您需要更新您的浏览器和 adobe pdf 查看器。
  • 这很难控制,因为它通常取决于查看您页面的用户的计算机。
  • @Shree Khanal 非常有帮助的文章。

标签: html browser download http-headers httpresponse


【解决方案1】:

这确实取决于几个因素:

  • 服务器响应Content-Disposition标头值inline(打开它)与attachment (经典下载)
  • 浏览器配置(如何处理各种文件类型)
  • 已安装的浏览器插件
  • 浏览器打开文件的能力

详细的技术说明可以在这里找到:https://superuser.com/questions/1277819/why-does-chrome-sometimes-download-a-pdf-instead-of-opening-it

例如 Firefox 可以打开大多数 PDF 文件(但一般不能打开高级表单、加密文件...),

大多数高级 PDF 功能需要使用 Acrobat Reader 或特殊的 Acrobat Reader 插件。

【讨论】:

  • 感谢@Conic 建议使用 Disposition(我拒绝编辑有点太快了,我在自己的代码中使用了这个标题...)
【解决方案2】:

在正常情况下,可以在浏览器中查看以下文件。

.PNG .JPEG .PDF .doc 等等……

并且将始终下载以下文件。

.zip 。EXE文件 等等……

但在特殊情况下,这取决于用户浏览器设置和偏好。您可以通过this 链接获取更多详细信息。

【讨论】:

  • 浏览器如何打开文档?
  • 我认为即使是 MS IE 也无法打开 .doc 文件。
  • @hamza 链接断开
【解决方案3】:

这个问题有两个方面。

  1. 您可以将插件添加到浏览器中,以允许在浏览器窗口中查看几乎所有内容。在 PDF 的情况下,例如 Firefox 默认无法显示这些内容,但您可以安装插件。或者,也有独立的 PDF 查看器,它们也带有这样的插件,您可以根据需要激活它。

  2. 完成此操作后,如 cmets 中所述,如果资源标记为 download,则无论文件类型如何,浏览器都会下载它而不是尝试打开它。
    如果它的 http 标头为 Content-Disposition: attachment,则同上。
    所以不要使用它。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-10
  • 2011-09-07
  • 1970-01-01
  • 2023-03-18
相关资源
最近更新 更多