Javascript 只有当数据来自服务器时,Firefox才会出现HTML5下载问题

Javascript 只有当数据来自服务器时,Firefox才会出现HTML5下载问题,javascript,jquery,html,download,Javascript,Jquery,Html,Download,我想从服务器上下载一个JSON文件,在google Chrome中它工作正常,但在Firefox中它没有被下载,而是在一个新页面中打开 NB:Firefox下载可以很好地处理本地文件 如何解决这个问题 演示 这是我的代码 <a href="http://christtravels.com/js/dk.json" download="some.json"> Clicked </a> 我认为您的下载属性应该包含下载的文件名,或者是空的,所以请尝试下载=“some.js

我想从服务器上下载一个JSON文件,在google Chrome中它工作正常,但在Firefox中它没有被下载,而是在一个新页面中打开

NB:Firefox下载可以很好地处理本地文件

如何解决这个问题

演示

这是我的代码

<a href="http://christtravels.com/js/dk.json" download="some.json">
  Clicked
</a>


我认为您的
下载
属性应该包含下载的文件名,或者是空的,所以请尝试
下载=“some.json”
看看这是否有效

我希望这可以帮助您:

HTML:


可能它在您的样品中不起作用,因为它不是同一来源?实际上,Firefox现在只支持同源下载links@adeneo我正在使用Firefox44。Firefox正在从本地下载文件,但可能不是从服务器下载,因为它是交叉的-origin@Mr.Alien你能帮我下载一个有效的文件名吗?根据浏览器中文件名的类别,我假设文件名会有一个扩展名。但是,我还没有研究它的细节,您可以选择删除文件名,然后放入
download
,不带任何值。然而,正如大多数其他人所说,这很可能是CORS问题。
<a href="test.php">Clicked</a>
$download_name = 'http://christtravels.com/js/dk.json';

header('Content-Description: File Transfer');
header('Content-Type: application/json');
header('Content-Disposition: attachment;filename = ' . $download_name);
ob_clean();
flush();