Javascript internet explorer:使用ajax下载二进制文件';获取';呼叫

Javascript internet explorer:使用ajax下载二进制文件';获取';呼叫,javascript,jquery,ajax,Javascript,Jquery,Ajax,嗨,我是ajax和js新手。我必须静默下载(无提示)一个二进制文件(acylayly.zip)并将其保存在本地计算机上。 我能够从服务器获取数据: var xmlhttp = new XMLHttpRequest(); xmlhttp.open('GET', downloadURL , true); xmlhttp.responseType = 'arraybuffer'; xmlhttp.onload = function() { var typedData = new Uint8A

嗨,我是ajax和js新手。我必须静默下载(无提示)一个二进制文件(acylayly.zip)并将其保存在本地计算机上。 我能够从服务器获取数据:

var xmlhttp = new XMLHttpRequest();

xmlhttp.open('GET', downloadURL , true);
xmlhttp.responseType = 'arraybuffer';
xmlhttp.onload = function() {
    var typedData = new Uint8Array(xmlhttp.response),
    alert(typedData );      
    }
xmlhttp.send(null);
我现在需要将本地计算机上的数据保存到指定路径。我不能那样做。 我还必须在InternetExplorer10上运行这个



新思想:但是,C++允许你创建一个文件。因此,如果我通过JS+C++代码的数据,我可能会达到我想要的:):PS:更简单的方法是下载C++代码,但是我不能这么做,因为我使用的认证机制

这是出于安全原因。Javascript无法直接将文件保存到本地计算机。这将是黑客们乐于利用的功能。

出于安全原因,这是不可能的。Javascript无法直接将文件保存到本地计算机。这将是黑客们乐于利用的一个特性。

为什么要请求ajax?如果你做了一个简单的
window.location=downloadUrl
-类型的事情,你会得到浏览器的保存提示,我想做一个静默的doownload。所以你不想浏览器的提示听起来像是草图你想在用户不知情的情况下将任意文件转储到用户的计算机上吗?那永远不会被滥用,对吧?不,他们不会。它们将在临时文件夹中,我将在以后删除它们。为什么是ajax请求?如果你做了一个简单的
window.location=downloadUrl
-类型的事情,你会得到浏览器的保存提示,我想做一个静默的doownload。所以你不想浏览器的提示听起来像是草图你想在用户不知情的情况下将任意文件转储到用户的计算机上吗?那永远不会被滥用,对吧?不,他们不会。他们将在临时文件夹,我会删除他们以后的网址我下载使用身份验证。还是不可能吗?还是不可能。想象一下这样一个场景:我向您发送一个指向我的页面的链接,您访问它,然后我加载javascript从我的页面下载病毒保存到您的计算机上,而无需任何用户交互。我不仅感染了你的电脑,而且在你没有意识到的情况下完全感染了。下载请求可能已经过身份验证,但这并不能改变这是一个用户不希望的请求的事实。另外,我已经获取了数据。它和我在一起。我只需要将其保存在文件系统中。我下载时使用的url使用身份验证。还是不可能吗?还是不可能。想象一下这样一个场景:我向您发送一个指向我的页面的链接,您访问它,然后我加载javascript从我的页面下载病毒保存到您的计算机上,而无需任何用户交互。我不仅感染了你的电脑,而且在你没有意识到的情况下完全感染了。下载请求可能已经过身份验证,但这并不能改变这是一个用户不希望的请求的事实。另外,我已经获取了数据。它和我在一起。我只需要把它保存在文件系统上