html - 如何使单击链接下载图像?
问题描述
我一直在环顾四周,我发现由于某种原因适用于某些链接的东西,但是当我尝试下载我的图像时,它只会打开带有图像的页面
<a href="https://i.imgur.com/KBUpwNd.jpg" download="V2Map">Download</a>
我希望这会下载我链接的 imgur 图像,但它只是打开链接,有什么想法可以解决这个问题吗?
解决方案
我刚刚做了一个快速测试,在这种情况下,源域似乎很重要。
如果图像在同一个域中,则下载属性可以正常工作。否则它会打开链接。
- 此属性仅适用于同源 URL。
- 尽管 HTTP(s) URL 需要同源,但 blob: URL 和 data: URL 是允许的,以便可以下载由 JavaScript 生成的内容,例如在图像编辑器 Web 应用程序中创建的图片。
- 如果 HTTP 标头 Content-Disposition: 给出的文件名与此属性不同,则 HTTP 标头优先于此属性。
- 如果 Content-Disposition: 设置为 inline,Firefox 会优先考虑 Content-Disposition,就像文件名大小写一样,而 Chrome 会优先考虑下载属性。
推荐阅读
- laravel - 设置复杂表格格式
- jquery - 单击内部时,ul下拉列表消失
- angular - 页面转换前闪烁
- c++ - const 类方法是否会阻止在类之外分配变量?
- php - 将带有时间戳值的 int 列转换为日期格式 (Ymd)
- dart - 错误状态:在 `when()` 中未调用 Mock 方法。是否调用了真正的方法?
- python - 如何使用 map_blocks 触发映射到 dask 数组的函数并将结果存储到 xarray 或 dask 数组而不使用 numpy 数组?
- sql - 如何将不同表中的不同列合并到一个表中
- c# - 应用过滤器时 XRSubreport 不包含任何数据
- python - 粘贴到Python时如何截断回车