4

我正在使用 AWS S3 Javascript sdk 通过浏览器将文件上传到我的 S3 存储桶。通过正常的多部分上传,我可以毫无问题地获取文件或上传小型甚至大型文件。

我面临的问题是上传一个巨大的文件并在两者之间失去了联系。连接返回后,重新发送剩余部分上传的请求,但失败。

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

在此处输入图像描述

失败的任何原因,或者可以处理/解决的任何方式?

4

1 回答 1

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。每个文件的最大上传大小也有限制。请看一看。

于 2015-06-25T20:14:39.877 回答