【问题标题】:Upload file to Amazon s3 - client-side javascript将文件上传到 Amazon s3 - 客户端 javascript
【发布时间】:2017-07-23 15:34:25
【问题描述】:

我尝试将文件上传到 Amazon s3
这是我发送的参数 params send

并且 api 返回这个允许错误 error response

这是我的 cors 配置

<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <AllowedMethod>POST</AllowedMethod>
    <AllowedMethod>DELETE</AllowedMethod>
    <AllowedHeader>*</AllowedHeader>
    <ExposeHeader>ETags</ExposeHeader>
    <ExposeHeader>x-amz-acl</ExposeHeader>
    <ExposeHeader>x-amz-request-id</ExposeHeader>      
</CORSRule>

【问题讨论】:

  • 我使用 AWS.S3 javascript api,这允许 accessKeyId 和 secretAccessKey,如果没有发送参数 ACL 和 GrandFullControl 都可以,但如果我发送这两个参数,我会收到此错误。

标签: javascript amazon-web-services amazon-s3 cors


【解决方案1】:

错误消息是“不允许同时指定标准 ACL 和标头授予”。 (仅供参考,请在您的问题中直接包含错误消息)

放置对象时,您可以提供固定 ACL 或特定授权/被授权者,但不能同时提供两者。你已经提供了两者。

如果您的目标是允许任何经过身份验证的用户读取,那么只需使用经过身份验证的读取的罐装 ACL 选项。这将给予对象所有者 FULL_CONTROL 并给予 AuthenticatedUsers 组 READ 访问权限。详情请见Canned ACLS

PS 你也错误地使用了 GrantFullControl。它的值必须是被授权者,而不是诸如“READ”之类的权限字符串。

【讨论】:

    猜你喜欢
    • 2014-02-22
    • 2021-06-30
    • 1970-01-01
    • 2015-12-04
    • 2019-04-26
    • 2014-12-06
    • 1970-01-01
    • 2016-11-05
    • 2019-12-10
    相关资源
    最近更新 更多