我想允许网站用户能够从我的网站下载文件,但在客户端下载程序的帮助下,能够继续中断下载。
例如,我想向一个人发送一个大小超过30兆的文件。我希望用户拥有最佳的下载体验,因此我无法让他下载25 Meg,然后由于他身边的网络问题而导致下载失败。
因此,我希望在下载页面上呈现一个javascript下载程序,它将显示实际的客户端文件传递,以及何时下载,以便用户能够保存文件。
或者由于javascript无法打开保存文件对话框并保存到文件系统这是不可能的?
答案 0 :(得分:3)
我担心使用JavaScript是不可能的,这就是原因:
要从特定点继续下载,您应该向服务器发送开始下载的位置编号。由于JavaScript无法访问本地文件系统,因此无法获得该位置。
UPD :似乎我太匆忙回复了。 可以使用HTML5 File API获取文件大小,在获取文件大小后,您可以将其传递给应支持部分下载的服务器。
但无论如何,在下载文件的另一部分后,你应该以某种方式缝合两件;标准Web浏览器对话框仅建议覆盖该文件。
UPD2 :要使用某些Internet Explorers中的文件,您可以使用FileSystemObject:
var fso;
fso = new ActiveXObject("Scripting.FileSystemObject");
答案 1 :(得分:0)
我会考虑制作一个插件或扩展程序。就像firefox和Google Chrome的DownloadThemAll扩展一样。另一种选择是使用Flash,无论是单独使用还是将其与javascript集成在一起,如下所示:http://www.communitymx.com/content/article.cfm?cid=0922A