【发布时间】:2019-09-20 19:04:51
【问题描述】:
我正在使用 NodeJS AWS 开发工具包生成预签名的 S3 url。这是我的代码
const s3 = new AWS.S3({accessKeyId: IAM_USER_KEY, secretAccessKey:IAM_USER_SECRET});
const myKey = 'test.csv';
const signedUrlExpireSeconds = 60 * 5;
const url = await s3.getSignedUrl('getObject', {
Bucket: BUCKET_NAME,
Key: myKey,
Expires: signedUrlExpireSeconds,
})
console.log(url)
当我使用浏览器访问该网址时,它会显示此错误
<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
<Key>test.csv</Key>
<RequestId>EAFAC43D236CAFDF</RequestId>
<HostId>
knOGCpoUWq4TaRJmkx+ztWFliPOSABdnineRyNhhkqc/ahgPTpYSA+Aawmj5w2odWMt2kk3fGhY=
</HostId>
</Error>
在客户端,它返回 400 错误请求错误。错误的存储桶名称、密钥或密钥会为每个返回不同的错误,所以我认为这不是拼写错误,但我不知道错误来自哪里。
【问题讨论】:
标签: node.js amazon-web-services amazon-s3