2009-10-07 73 views
1

我正在寻找一种方法来通过Web界面上传超大文件,即5 GB或更多的文件。可以选择语言/服务器系统。 POST请求似乎不起作用,因为浏览器内部的文件指针只能处理高达2 GB的文件。其他选项例如是一个Java-applet,一个FTP-Request(例如由Javascript-Library完成)或其他可以可靠执行的任务。上传超大文件

任何想法赞赏。

回答

3

我在这里也有同样的任务;我们用它执行下列活动Silverlight客户端应用程序结束:

  • 允许用户选择一个或多个文件
  • 对于每个文件
    • 打破它在小数据块(只有几千字节)
    • 使用gzip压缩块数据
    • 创建校验和并将其发送到web服务
    • 在服务器端,检查校验和
    • 创建/打开部分文件
    • 追加未压缩数据结束
    • 以进度条的报告进度和射击JavaScript事件

到目前为止,就像一个魅力。

+0

听起来很有希望 - 我会试一试,谢谢。 – schneck 2009-10-07 12:48:48

2

在浏览器内运行的任何内容都不起作用,因为它将使用相同的文件API。所以你的选择是独立的应用程序或小程序,或者也许是Flash(我不知道)。

我建议尝试一个小程序和commons-fileupload

2

只是一个想法...... HTTP并不适用于这种大小的数据传输。

尽管它可能有效,但最有可能失败并且很难恢复。

FTP听起来更有希望,但千兆字节上传正在推动它。

Bittorrent处理这种传输的大小,但这是一个完整的故事。