0

我正在阅读 Amazon S3 Multipart Upload REST API的官方文档,我想知道是否可以通过 AJAX 使用这个 API。

我问的原因是我尝试将一个非常大的文件(> 5GB)从我的浏览器上传到 S3 存储桶,我知道有一个用于 Javascript 的 S3 上传 API以及一种利用 AJAX 将文件上传到 S3的方法,但这些都不是解决大文件问题。

我能想到的不支持使用 AJAX 的 MultiPart 上传 API 的原因是浏览器无法拆分本地文件,但我想确保确实如此。

这里有没有人曾经在 AJAX 中使用过分段上传 api,或者如果不可能这样做,人们通常如何处理从浏览器上传的大文件?

提前非常感谢!

4

1 回答 1

0

我认为您没有必要为此使用 Rest API。根据以下 AWS 博客文章,在您链接的 javascript 示例中使用的 s3.upload() 方法确实支持大文件的分段上传:宣布适用于 JavaScript 的 AWS 开发工具包中的 Amazon S3 托管上传器。包含一个浏览器示例,尽管它使用的是 bucket.upload 而不是 s3.upload。它还包括跟踪进度、配置并发和部件大小以及处理故障的示例。

关于浏览器上传,它确实说“为了在浏览器中支持大文件上传,您必须确保您的 CORS 配置公开 ETag 标头;否则,您的分段上传将不会成功。有关如何操作的更多信息,请参阅指南公开此标头。”

可能 CORS 配置可能还需要允许比您链接的示例的“配置 CORS”部分中列出的方法更多。

于 2019-06-27T16:24:36.830 回答