我正在尝试使用AWS Storage获取S3对象
fetchAvatar = async () => {
try {
const imageData = await Storage.get("public/public/us-east-2:/1597842961073/family.jpg")
console.log(imageData)
} catch (err) {
console.log('error fetching avatar: ')
console.log(err)
}
}
当我单击imageData提供的链接时,我得到NoSuchKey错误,但是它确实存在

我已经确保图像是公开的,并且每个人都可以访问,所以应该不会有任何身份验证问题。我也看过类似的问题,我确保我的图像键中没有空格或许多特殊的键。我被这个问题难住了.
发布于 2020-08-19 22:47:27
所以我找出了原因,这与亚马逊网络服务的S3管理有关。由于某些原因,每次我上传一张图片时,文件夹都会重置,变成女贞。当我手动重新创建文件夹和图像时,我可以渲染图像properly...So,我猜这更多是因为亚马逊网络服务的问题或bug,我认为他们需要修复
发布于 2020-08-19 22:07:18
我建议使用javascript aws sdk,您可以从存储桶中获取一个对象,如下所示:
var params = {
Bucket: "your-bucket-name",
Key: "yourFileName.jpg"
};
s3.getObject(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data);
});更新:
您可以在创建s3实例时定义您的地域,例如:
const s3 = new S3({
region: 'eu-central-1',
});https://stackoverflow.com/questions/63488338
复制相似问题