use*_*745 6 browser safari google-chrome image
我觉得我应该能够解决这个问题,但我做不到。
此图像尝试下载(在我测试的浏览器中:safari 和 chrome):
https://d3i71xaburhd42.cloudfront.net/9470b0dc3daccafa53ebe8f54d5bfed00afce2ce/29-Figure13-1.png
而这一张(以及大多数其他图像)会自动出现在浏览器中:
https://i.stack.imgur.com/Mb5Mp.jpg
这两张图片完全是任意的例子;显然还有很多例子可以举出。根据我的经验,大多数图像会自动显示在浏览器中,但偶尔有人想下载到“下载”文件夹或其他熟悉的位置,我不太清楚为什么会这样。
是什么导致某些图像需要下载,而另一些图像则由浏览器自动打开并可在浏览器中查看?
这通常是由两个 HTTP 响应标头之一引起的。
Content-Disposition此标头告诉浏览器应显示响应的内容inline(默认值)或作为attachment. 后者将导致浏览器下载响应。
Content-Type这告诉浏览器响应包含什么类型的内容。根据内容类型,浏览器知道如何处理响应。例如,text/html将导致浏览器将响应视为 HTML 并将其呈现为 HTML。text/plain将使响应显示为简单的文本文件,image/jpeg将使响应显示为图像,并binary/octet-stream告诉浏览器“这是二进制数据”,这通常会导致浏览器下载文件。MIME 类型的列表不胜枚举。
如果图像被下载而不是显示在浏览器中,并且它没有将Content-Disposition响应标头设置为attachment,则通常意味着Content-Type设置不正确。对于您提供的第一张图像, 被Content-Type设置为binary/octet-stream,因此浏览器不会将其视为图像。
| 归档时间: |
|
| 查看次数: |
6308 次 |
| 最近记录: |