Chrome会下载PNG图片链接。我希望他们打开以便在新标签中查看。我如何让Chrome做到这一点?

时间:2012-02-01 14:45:16

标签: google-chrome file-io png mime-types

当我立即点击图片链接时,Chrome会下载图片而不是打开图片。

即使我右键单击并选择Open link in new tab Chrome 仍然下载图像,我也必须完成打开文件以便手动查看的额外步骤。

这对我来说感觉像是一个哑剧类型的问题,但为什么Chrome不会将“image / png”识别为有效的mime类型以供查看?所有PNG图像在HTML页面中都可以正常显示。

这感觉就像一个非常愚蠢的问题,但我搜索过所有搜索并且无法接近答案。我是世界上唯一一个遇到这个问题的人吗?

注意:这仅适用于PNG图像。

5 个答案:

答案 0 :(得分:18)

Web服务器可能使用image/x-png MIME类型为图像提供服务。 Chrome does not recognise this as an image(截至2013年8月 2013年2月),因此可以下载该文件。

image/x-png是1996年got its official nameimage/png之前的旧版MIME类型。但是,当Internet Explorer上传图像时,它使用image/x-pngfor backward compatibility”。我相信这是IE8的情况,并且在IE9中被“修复”了。如果Web服务器未正确处理此问题(Web服务器应检测到此非标准MIME类型并将其视为image/png),则它可能会将客户端提供的MIME类型提供给其他用户,包括Google铬。此外,某些网站会将所有PNG提供为image/x-png

如果您是网络开发者,则应检测传入的image/x-png并将其视为image-png(从不提供image/x-png)。

如果您是用户将其报告为错误,请参阅@kriegaex's answer了解解决方法。

答案 1 :(得分:16)

@Tom Clift是对的,这是我的workaround:使用Chrome扩展程序重定向程序并添加替换Content-Type标题的规则。而已。 : - )

答案 2 :(得分:2)

当网络服务器向浏览器发送未知的 MimeType 时,浏览器会自动下载文件,因为它们无法理解如何解析和呈现响应。

当时,当问到这个问题时,Chrome 没有将 image/x-png 识别为有效的 MimeType,因此下载了该文件。此问题已在此票证中提到的更高版本的 Chrome(我相信 2019 年后发布的版本)中得到修复https://bugs.chromium.org/p/chromium/issues/detail?id=25293

显示 Content-Type 为 image/x-png 时的屏幕截图,Chrome 正在呈现图像

enter image description here

每当您遇到任何此类问题时,您都可以使用 Chrome Extension like Requestly to Modify Content-Type Response Header

创建修改标题规则的步骤

  1. 添加新规则
  2. 点击修改标题规则
  3. 修改响应头 Content-Type 值 -> image/png
  4. 网址包含 .png

Requestly 中的头部规则截图

enter image description here

链接到规则

其他参考资料

答案 3 :(得分:1)

您可以使用 Chrome 扩展程序 Undisposition 来实现这一点。

答案 4 :(得分:-2)

当您右键单击图像时,需要从下拉菜单中选择“在新标签页中打开图像”而不是“在新标签页中打开链接”,然后在新标签页中打开图像。