如何使用xmlhttprequest将文件上传到aws s3

问题描述 投票:0回答:1

如何使用xmlhttprequest将文件上传到s3。我尝试了以下方式,但我得到了错误

“此操作禁止匿名访问”。

这是我的代码:

const xhr = new XMLHttpRequest();
xhr.open('PUT', "https://region.amazonaws.com/bucket-name/");
xhr.setRequestHeader('X-Amz-ACL', 'public-read');
xhr.setRequestHeader('Content-Type', 'image/png');
xhr.send({
    file: file,
    type: 'image/png',
    name: "myfile_9898_0",
    acl: 'public-read',
    AWSAccessKeyId: 'aws key',
    AWSSecreKeyId: 'scret_key'
});

这段代码有什么问题吗? 谁能帮我?

javascript amazon-s3
1个回答
1
投票

你拼错了SecretKey。

但是,任何查看此页面的人(假设它在html页面中)都可以窃取您的凭据!把secretKey放在任何地方都是一个非常糟糕的想法 - 你最好用你的秘密在服务器上生成一个'预签名密钥'。您还需要在服务器上设置CORS以允许交叉发布。

© www.soinside.com 2019 - 2024. All rights reserved.