【问题标题】:AWS s3 EntityTooLarge and FroalaAWS s3 EntityTooLarge 和 Froala
【发布时间】:2016-11-23 20:42:00
【问题描述】:

我正在使用 Froala WYSIWYG 编辑器将文件上传到 s3。只要文件小于 20 mb,一切正常。我已将 Froala 编辑器设置为接受超过 50 mb 的文件。但是,每当我尝试上传更大的文件时,我都会从 s3 收到以下响应错误:

<Error>
<Code>EntityTooLarge</Code>
<Message>Your proposed upload exceeds the maximum allowed size</Message>
<ProposedSize>20974039</ProposedSize>
<MaxSizeAllowed>20971520</MaxSizeAllowed>
<RequestId>4292DB24BF022FC5</RequestId>
<HostId>C0QRzNxtazcS4NUQwvU89+QblW1MleMbLUNxoEAyjX2EuUmNUKXc3XbV+1K1GagBHOGBHHpB8ho=</HostId>
</Error>

我将文件上传到 s3 设置如下:

fileMaxSize: 60 * 1024 * 1024,
          fileUploadToS3: {
            bucket: "<%= @hash[:bucket] %>",
            region: "s3-us-west-1",
            keyStart: "<%= @hash[:key_start] %>",
            callback: function (url, key) {
            },
            params: {
              acl: "<%= @hash[:acl] %>", // ACL according to Amazon Documentation.
              AWSAccessKeyId: "<%= @hash[:access_key] %>", // Access Key from Amazon.
              policy: "<%= @hash[:policy] %>", // Policy string computed in the backend.
              signature: "<%= @hash[:signature] %>", // Signature computed in the backend.
            }
          }

这似乎来自亚马逊的大小,但据我所知,s3 支持每个文件最多上传 5gb。我在这里错过了什么?

【问题讨论】:

  • 您的// Policy string computed in the backend 可以包含限制任何上传大小的“内容长度范围”。看看您在政策文件中使用的内容,并可能在问题中包含一个示例,以便我们可以将其排除在外?
  • 哇。你刚刚解决了我的问题。你不知道我花了多长时间试图解决这个问题。谢谢。

标签: amazon-s3 froala


【解决方案1】:

S3 中表单发布上传的政策声明包括对 content-length-range 条件键的支持,这表明...

上传内容的最小和最大允许大小

http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOSTConstructPolicy.html#sigv4-PolicyConditions

您的这部分代码未在问题中显示,但 S3 似乎在抱怨您上传的文件大于您自己的策略允许的最大大小。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-06
    • 2016-08-28
    • 1970-01-01
    • 1970-01-01
    • 2019-03-26
    相关资源
    最近更新 更多