我有一个应用需要从S3下载一些图像。我尝试设置一个新的CloudFront发行版,将原点指向我的S3存储桶,并想知道这将如何改变我在我的应用中访问图像的方式。我的应用程序只是向S3请求图像:
S3GetObjectRequest *getObjectRequest = [[S3GetObjectRequest alloc] initWithKey:path withBucket:PICTURE_BUCKET];
S3GetObjectResponse *getObjectResponse = [self.s3 getObject:getObjectRequest];
UIImage *img = [[UIImage alloc]initWithData:getObjectResponse.body];
此处,PICTURE_BUCKET是我的S3存储桶的名称,path是图像的名称(64758_244.jpg)。
如何通过CloudFront访问此图片?
我发现了
但我是亚马逊移动服务开发的新手,我不知道该怎么做。
感谢。
答案 0 :(得分:4)
如果您的问题只是如何找到访问Cloudfront图像的URL,这是一种方法。
从Cloudfront,检查分发设置(在i图标下)并记下域名: 我有一个在: d3foqimq5fy14v.cloudfront.net ,这是我的 S3斗的标题为panchroma2013
在S3中,打开图像的属性窗格并复制链接URL 我有一个:https://s3.amazonaws.com/panchroma2013/template/panchroma-website-design.png
在那里,仔细检查文件权限。您可能需要添加受赠人:每个人,是打开/下载
此图片的 cloudfront网址是我的云端域名+存储桶名称后的S3网址,即:
http://d3foqimq5fy14v.cloudfront.net/template/panchroma-website-design.png
希望这对您有所帮助!