不确定是否是发布此问题的最佳地点,如果不是,请重定向我,然后我将删除该帖子并将其发布到正确的位置。
我知道最近amazon s3
在访问文件时更改了其URL。
它曾经像http://s3.amazonaws.com/<bucket>
或http://s3.<region>.amazonaws.com/<bucket>
但是由于本文档https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro,http://<bucket>.s3-<aws-region>.amazonaws.com
或http://<bucket>.s3.amazonaws.com
有所变化
http://<bucket>.s3.amazonaws.com
将在2019年3月20日之后无法访问,但是当我在aws-sdk
中使用javascript
进行文件上传时,我从aws返回的网址是{ {1}}
如果该网址不可访问,为什么aws会返回该网址? (我仍然可以使用url访问文件)
如果该URL不可能在不久的将来访问,我是否应该自己添加skipper-better-s3
还是自己修改该URL,而不是使用AWS返回的URL?
还是我的代码可能有问题? 下面是我上传的代码
http://<bucket>.s3.amazonaws.com/<Key>
region
将返回
const awsOptions = { // these fields are different because this uses skipper
adapter: require('skipper-better-s3'),
key: aws_access_key,
secret: aws_secret_key,
saveAs: PATH,
bucket: BUCKET,
s3params: {
ACL: 'public-read'
},
}
const fieldName = req._fileparser.upstreams[0].fieldName;
req.file(fieldName).upload(awsOptions, (err, filesUploaded) => {
if (err) reject(err);
const filesUploadedF = filesUploaded[0]; // F = first file
const url = filesUploadedF.extra.Location; // image url -> https://<bucket>.s3.amazonaws.com/<Key>
console.log(url, 'urlurlurl');
});
答案 0 :(得分:1)
http://<bucket>.s3.amazonaws.com
样式命名的documentation you linked to表示:
注意
无法通过https://bucket.s3.amazonaws.com命名方案访问在2019年3月20日之后发布的区域中创建的存储桶。
那里的措辞很重要。他们只是在谈论2019年3月20日之后上线的新地区。
到目前为止,只有在中东(巴林)和亚太地区(香港)地区创建的存储桶。