从javascript下载文件

时间:2013-05-17 18:13:54

标签: javascript azure xss azure-storage azure-storage-blobs

我有一个.NET Web应用程序,其中包含大量可下载的文档。我想将这些文件异地移动到Azure存储。但是,给定一个特定文件的URL,我需要一种从客户端浏览器下载它的方法(当然使用Javascript)。我正在寻找的行为是浏览器的“保存文件为”功能,允许用户将文件保存到本地计算机。

我有以下代码尝试无效。我正在使用脚本标记b / c,这是解决跨域脚本问题的唯一方法。但是,在与Fiddler一起观看时,甚至都没有尝试过该请求。我的理解是,设置.src属性应该调用下载。

var script = document.createElement('script');
script.type = 'application/pdf';
script.src = 'http://myazureaccount.com/myPDFfile.pdf';

有人能告诉我一个完成此任务的方法吗?可能没有办法做到这一点。另外,我不想在Azure中运行任何类型的服务器端代码。我只想将它用作外部文件存储。

1 个答案:

答案 0 :(得分:1)

您应该使用Custom Domain for your Azure Storage account,因此它来自同一个域(,例如files.mydomain.com )。这将解决跨站点脚本(XSS)问题。