从网页多次并发下载

时间:2014-01-22 17:10:12

标签: javascript jquery asp.net ajax vb.net

背景

我们有一个网站,通过下载到我们的客户提供动态内容。目前,这是通过简单地向另一个页面发出请求来完成的,该页面动态地设置响应ContentType并流出文件数据。

问题

我们现在的任务是在点击按钮时(或作为页面加载)一次发送多个内容。我们尝试了各种方法:

1)页面上有多个iFrame,每个iFrame都有不同的下载URL。这并不适用于所有浏览器,并且由于我们的平台针对的是手机,因此许多原生手机浏览器根本无法处理iFrame。

2)内容的多个AJAX请求。这是有缺陷的,因为AJAX请求只是返回二进制数据,而页面试图将所有这些输出到页面上而不是作为下载提供。

3)多个JavaScript超时。这最多可以下载3次,但是非常不可靠,因为如果第二个Timeout函数在第一个Timeout函数开始下载之前就开始了,那么整个事情就会破坏而不是继续下去。

此时我的想法很新鲜。我尝试使用Google搜索问题的类似解决方案,但没有提出任何问题,我开始认为这实际上是不可能的。

请注意,由于内容是移动设备的目标,因此设备通常无法解压缩内容,因此无法将文件压缩并立即传送所有内容。

那么问题是:有没有办法可靠地触发网络浏览器一次下载多个内容?

1 个答案:

答案 0 :(得分:0)

事实证明,这在移动设备上确实无法实现。大多数移动浏览器都支持所涉及的方法,但由于浏览器的每个选项卡的线程和暂停方式,一次只能触发一次下载,因为任何重定向操作都会中断处理中剩余的javascript。