【问题标题】:How to trigger file download on URL without extension如何在没有扩展名的 URL 上触发文件下载
【发布时间】:2019-01-07 04:22:09
【问题描述】:

我试图在用户点击链接时触发下载。

托管在我不拥有/无法控制的服务器上的文件,因此我不能直接将 URL 添加到文件(例如:https://example.com/video.mp4)。我已经尝试了以下代码,但它并没有做我想做的事情。

<a href="https://example.com/filedownload?file=video" download>Download</a>

我希望代码在用户单击链接时下载文件。但是当用户单击链接时,它会在 URL 处打开一个新选项卡,而不是下载文件。

此外,该链接不是 MediaFire 样式的下载。如果您在链接到该页面时按 CTRL+S 将下载video.mp4

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    有三种方法可以触发将 URL 保存到磁盘,而不是遵循浏览器的默认行为。

    • download attribute 仅适用于同源 URL。
    • Content-Disposition 标头,要求您控制托管文件的服务器。
    • 在内容类型上撒谎,同上,无论如何这是一种糟糕的方法。

    实现您想要的唯一方法是从您执行控制的服务器提供文件。

    【讨论】:

    猜你喜欢
    • 2021-03-13
    • 1970-01-01
    • 2011-12-24
    • 2013-05-07
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 2015-12-06
    相关资源
    最近更新 更多