我已将图像上传到Amazon S3存储 . 但是如何通过url访问此图像?我已将文件夹和文件设为公共但如果尝试通过URL访问它仍然会收到AccessDenied错误https://s3.amazonaws.com/bucket/path/image.png
我已将图像上传到Amazon S3存储 . 但是如何通过url访问此图像?我已将文件夹和文件设为公共但如果尝试通过URL访问它仍然会收到AccessDenied错误https://s3.amazonaws.com/bucket/path/image.png
8 回答
我遇到了同样的问题 . 我有问题图像网址中的间距 . 我这样做是为了让它工作:
现在将此网址传递给毕加索:
在控制台上,右键单击要访问的图像,然后单击“公开”;完成后,再次右键单击图像并单击“属性”,然后从“扩展”视图中复制“链接” .
最简单的方法之一是制定存储桶策略 .
{"Version":"2012-10-17","Statement":[{_ 1146464:"MakeItPublic","Effect":"Allow","Principal":“_ ", "操作": " s3:GetObject ", "资源": " arn:aws:s3 ::: yourbucketname.com/”}]}
这是一个较老的问题,但对于遇到此问题的任何人,一旦我公开了该文件,我就可以访问我的图像https://mybucket.s3.amazonaws.com/myfolder/afile.jpg
您可以使用以下方式访问您的图像:
或者如果没有文件夹,你可以这样做:
upvote如果有帮助 . 它符合2017年5月30日的现有AWS .
看起来您现在只需右键单击存储桶中的任何文件夹,然后选择“公开”即可将该文件夹中的所有内容公开 . 它可能无法在桶级别本身工作 .
确保使用与上载和存储在S3上相同的大小写访问图像 . 例如,如果您上传了image_name . JPG ,您应该使用相同的名称,但不能使用image_name . jpg
我在寻找无法访问图像的类似问题的解决方案时遇到了这个问题 .
事实证明,在访问时,文件名中包含
%
的图像必须将%
符号URL编码为%25
.即
photo%20of%20a%20banana%20-%2019%20june%202016.jpg
需要通过photo%2520of%2520a%2520banana%2520-%252019%2520june%25202016.jpg
访问 .但是,编码完整路径的URL对我们不起作用,因为斜杠等会被编码,并且路径不起作用 . 在我们的特定情况下,只需在所有访问路径中用
%25
替换%
就可以了 .