【问题标题】:AWS S3 Javascript SDK Resend Request FailureAWS S3 Javascript SDK 重新发送请求失败
【发布时间】:2015-08-31 21:28:02
【问题描述】:

我正在使用 AWS S3 Javascript sdk 通过浏览器将文件上传到我的 S3 存储桶。我可以正常使用分段上传来获取文件或上传小型甚至大型文件。

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

我附上了失败请求的截图

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

【问题讨论】:

  • 你的问题解决了吗?
  • “大文件”什么时候上传失败?文件大小是多少?
  • 文件大小约为 4.5 MB,分成两部分进行分段上传。它有时确实有效,但问题仍然存在。
  • 你能把脚本上传到某个地方吗?我可以调试它。
  • 你检查过这个话题吗?它可能会有所帮助:stackoverflow.com/questions/10124785/…

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


【解决方案1】:

当您上传大量数据时,您可以尝试包含一个类 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。每个文件的最大上传大小也有限制。请务必看一看。

【讨论】:

    猜你喜欢
    • 2020-11-09
    • 2012-02-11
    • 1970-01-01
    • 2016-10-08
    • 2022-11-03
    • 2013-05-07
    • 2015-12-08
    • 2015-11-24
    • 1970-01-01
    相关资源
    最近更新 更多