Amazon S3有a very nice feature,允许上传大文件的部分文件。如果我使用S3,这对我来说非常有用,但我不是。
这是我的问题:我将让Android手机半定期上传相当大的文件(每个二进制数据大约50MB)。由于这些手机正在使用移动网络进行此操作,并且在使用它们的某些地方覆盖范围很大,因此无法保证强信号。因此,在内容体中使用40MB数据进行简单的PUT将无法正常工作。 我需要以某种方式分割数据(可能是10MB块)并在信号允许时上传它们。上传完所有块后,需要将它们合并到一个文件中。
我基本了解客户端如何通过阅读亚马逊的S3客户端API来支持这一点,但不知道服务器正在采取什么措施来实现这一点。我愿意用 Python或PHP 编写服务器。 是否有任何一种语言可供这种语言使用?在搜索约一小时后我找不到任何内容。
基本上,我正在寻找能够帮助我指明正确方向的任何事情。有关此信息的信息以及用于使其尽可能具有RESTful的协议和标头将非常棒。谢谢!
答案 0 :(得分:0)
在multi-part upload的REST API文档中,似乎亚马逊希望客户端将大文件分成更小的多个部分并单独上传。在上传之前,您需要获取upload id并在每次上传时都包含上传ID和正在上传的文件部分的部件号。
你可能需要进行结构化的方法是创建一个客户端,它可以将一个巨大的文件分成多个部分,并使用上面指定的约定并行上传它们。