|
|
1
21
2) 如果它存在并且大小==本地大小,则已完成上载 3) 如果尺寸<本地大小,添加要请求的内容范围标头,并查找到本地文件中的适当位置。 4) 发出PUT请求以上载文件(或部分文件,如果继续) 5) 如果在PUT请求期间连接失败,请重新开始步骤1
|
|
|
2
2
你需要一个标准尺寸(比如256k)。如果用户x上传的文件“abc.txt”为78.3MB,则会有313个完整块和一个较小的块。
您可以随意增加或减少线程数,因为应用程序正在控制发送。
|
|
|
3
2
libcurl(capi)可能是一个可行的选择 -C/--继续在 以给定偏移量继续/恢复上一次文件传输。给定偏移量是将被跳过的确切字节数,从源文件的开头开始计算,然后再传输到目标文件。如果与上载一起使用,curl将不使用FTP服务器命令大小。 使用“-C-”告诉curl自动找出在哪里/如何恢复传输。然后它使用给定的输出/输入文件来解决这个问题。 |
|
|
4
2
谷歌已经创建了一个可恢复的HTTP上传协议。看见 https://developers.google.com/gdata/docs/resumable_upload |
|
|
5
1
|
|
|
6
1
http://yourpage/.../upload.php?file=myfile&from=123456 并在客户端处理简历(也许您可以添加一个函数来检查服务器接收到的范围) |
|
|
7
1
哈哈,我也在想同样的事情——把整个事情颠倒过来,把服务器变成客户机,把客户机变成服务器。Thx对罗尔来说,为什么它不起作用,我现在更清楚了。 @罗尔 我建议实现Java uploader[JumpLoader很好,它有JScript接口,甚至还有PHP服务器端的示例代码]。Flash上传程序在biiigggg文件(即:)方面遭受了巨大的损失,其规模为千兆字节。 |
|
|
8
0
它不能完全满足您的需要,因为它是用Perl编写的,需要一个基于UNIX的服务器,但是客户端可以在任何操作系统上。尽管如此,这可能对您有所帮助: http://fex.rus.uni-stuttgart.de/ |