Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在没有扩展名的URL上触发文件下载_Javascript_Html - Fatal编程技术网

Javascript 如何在没有扩展名的URL上触发文件下载

Javascript 如何在没有扩展名的URL上触发文件下载,javascript,html,Javascript,Html,我试图在用户点击链接时触发下载 托管在我不拥有/无法控制的服务器上的文件,因此我不能只向文件添加直接URL(例如:https://example.com/video.mp4)。我已经尝试了下面的代码,但它没有达到我想要的效果 <a href="https://example.com/filedownload?file=video" download>Download</a> 我希望当用户单击链接时,代码会下载该文件。但是,当用户单击链接时,它会在URL处打开一个新选

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

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

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

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


此外,该链接不是MediaFire风格的下载。如果在链接到的页面上按CTRL+S键,将下载
video.mp4

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

  • 仅适用于相同来源的URL
  • 内容处置
    头,要求您控制承载文件的服务器
  • 在内容类型上撒谎,同上,这是一种糟糕的方法

实现所需的唯一方法是从您控制的服务器提供文件。

有关阻止跨源URL的
下载
属性的讨论,请参阅