如何使用javascript xhr(在chrome中)下载大型视频文件
由于一个不断破坏chrome选项卡()的bug,无法通过ajax请求下载大文件(>50-80MB) 不幸的是,我不得不使用Chrome,因为它是目前唯一实现文件系统API()的浏览器 如何下载一个大的电影文件以如何使用javascript xhr(在chrome中)下载大型视频文件,javascript,ajax,google-chrome,xmlhttprequest,blob,Javascript,Ajax,Google Chrome,Xmlhttprequest,Blob,由于一个不断破坏chrome选项卡()的bug,无法通过ajax请求下载大文件(>50-80MB) 不幸的是,我不得不使用Chrome,因为它是目前唯一实现文件系统API()的浏览器 如何下载一个大的电影文件以格式显示 您有一些代码示例吗?根据您链接到的问题,这是一个内存限制,您可以在任何内存有限的浏览器中获得 Chrome中的问题是XHR不会抛出异常,因此无法捕获并解决错误-因此,除了可能增加可用内存之外,似乎没有可用的修复方法 文件API在Firefox、Chrome、Safari和Oper
格式显示
您有一些代码示例吗?根据您链接到的问题,这是一个内存限制,您可以在任何内存有限的浏览器中获得 Chrome中的问题是XHR不会抛出异常,因此无法捕获并解决错误-因此,除了可能增加可用内存之外,似乎没有可用的修复方法 文件API在Firefox、Chrome、Safari和Opera中提供完全支持,在IE10中提供部分支持:
我成功地编写了一个javascript chunkloader的工作实现。 它依赖于返回块计数和块本身的服务器端代码。 客户端代码工作得很好 如果您想看一看或有任何改进,请随意分叉、复制或共享:
为什么不让浏览器来做呢?将标记HTML插入页面的容器(innerHTML属性)。无需要求Javascript执行浏览器自动执行的操作。我不明白为什么这么多人坚持用Javascript重新编程webbrowser的一部分以在webbrowser中运行:)我是否能够以blob的形式访问视频以将其保存在文件系统中。所以这在某种程度上与我保存图像的方式类似(
newimage…img.src=“
)。不。如果您坚持在不使用用户操作的情况下保存文件-因为使用用户操作,您可以再次让任何浏览器执行常规文件下载,前提是Web服务器发送正确的mime类型(导致“另存为”对话框而不是浏览器尝试显示文件)-如果允许这样做的浏览器有一个bug,那么它就不工作了。如果您坚持测试测试版功能/代码…:)是的,我需要通过编程来实现。对不起,我以为文件API是文件系统API的同义词。我指的是文件系统API,它只在Chrome中实现:啊。它将在下一版本的FF-v19I中发布,我很好奇您是否有任何在线工作示例使用chunkload.js代码?我被困在同样的情况下,使用XHR将一个巨大的视频传递给一些视频标签,Chrome每次都崩溃。如果您能再解释一下如何设置代码,我将不胜感激。。自述文件有点让我不知所措。Hi@fanfare-这个脚本严重依赖服务器端代码,它能够返回文件所需的块数和块本身。对于这种情况,我使用Asp.NET Web API在同一控制器中使用这两种方法,因此使用了requestUrl
param。这两种方法都有methodNames
和paramNames
。所有这些都是为XHR请求构建URL所必需的。实例化ChunkLoader
对象后,调用startDownload
方法。您正在传递的回调将在blob下载并“重建”后调用。希望这能澄清这一点。:)