让服务器接受大文件的多部分上传,并具备像S3一样的中止/恢复功能
亚马逊的S3有一个很不错的功能,可以把大文件分成小部分上传。这对我来说如果用S3的话会很有用,但我现在并没有使用它。
我的问题是:我需要让安卓手机定期上传一些比较大的文件(每个大约50MB的二进制数据)。因为这些手机是通过移动网络上传的,而在某些地方信号不太好,所以不能保证信号强。因此,简单地用一个40MB的数据进行上传并不太可行。我需要想办法把数据分割开来(可能分成10MB的小块),然后在信号好的时候上传它们。一旦所有的小块都上传完,就需要把它们合并成一个完整的文件。
我对客户端需要怎么做有一些基本的了解,主要是通过阅读亚马逊的S3客户端API,但对服务器端是怎么处理的就不太清楚了。我愿意用Python或PHP来写这个服务器。有没有适合这两种语言的库可以实现这个功能?我搜索了大约一个小时,但没有找到相关的资料。
总的来说,我希望能找到一些能指引我方向的东西。如果能提供关于这个的更多信息,以及使用什么协议和头信息来尽量做到RESTful,那就太好了。谢谢!