AWS S3 Javascript SDK重新发送请求失败

时间:2015-06-16 07:21:16

标签: javascript amazon-web-services file-upload amazon-s3 amazon-javascript-sdk

我使用AWS S3 Javascript sdk通过浏览器将文件上传到我的S3存储桶。我通过正常的多部分上传来获取文件或上传小型甚至是大型文件都没有问题。

我遇到的问题是在上传一个巨大的文件时丢失了我的连接。返回连接后,重新发送请求以查找要上载的其余部分但失败。

我附上了失败请求的屏幕截图

enter image description here

为什么会失败,或者任何可以处理/解决的原因?

1 个答案:

答案 0 :(得分:6)

当您上传大量数据时,您可以尝试包含一个ManagedUpload类来进行多部分上传。但是,您需要指定存储桶大小。文档中的示例代码如下:

var upload = new AWS.S3.ManagedUpload({
  partSize: 10 * 1024 * 1024, queueSize: 1,
  params: {Bucket: 'bucket', Key: 'key', Body: stream}
});

其中,partSize(数字),默认值为5mb,是每个要上传的单个部分的字节大小。

GitHub中还有一个开源项目:AWS S3 Multipart Upload from Browser,用JavaScript和PHP编写,可以直接在Amazon S3服务器上以5 MB的大小上传大文件,所以它可以恢复,并且容易从错误中恢复。

猜测要使用上面的插件,您可能必须使用PHP。每个文件的最大上传大小也有限制。请看一下。