s3.putObject返回400错误请求错误

时间:2018-06-04 15:55:09

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

我有一个代码将图像上传到s3存储桶,我能够使用aws s3 javascript sdk成功完成。但我在开发人员工具控制台中收到PUT请求400错误请求错误。我的代码

function upload()
{
    AWS.config.update({
        accessKeyId:"accesskey",
        secretAccessKey:"secretaccesskey"
)};
   s3 =new AWS.S3();

   var params = {
       Bucket:'mybucketname',
       Key:'myimagename',
       Body:<file object>,
       ACL:'public-read'
   }
   s3.putObject(params,function(err,res){
       if(err)
         console.log(err);
       else
         {
            console.log('success');
         }
   }); 
}

我试图在我的控制台中打印res对象,它是空的。

1 个答案:

答案 0 :(得分:0)

首先,您可以检查提供的access_key和secret_key用户是否有权手动将文件上传到s3。

如果您能够上传,则转到S3存储桶,然后单击您的存储桶并单击权限,然后检查CORS配置。

它应该类似于下面的内容。

<CORSConfiguration>
<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <AllowedHeader>Authorization</AllowedHeader>
</CORSRule>

您还可以根据您的要求将原点更改为您的网址。