1

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 バケットの名前で、パスはイメージの名前 (64758_244.jpg) です。

CloudFront からこのイメージにアクセスするにはどうすればよいですか?

私はそれを見つけました

iOS AWS SDK および CloudFront - イメージへのアクセス

しかし、Amazon Mobile Services の開発は初めてで、その方法がわかりません。

ありがとう。

4

1 に答える 1

4

Cloudfront イメージにアクセスするための URL を見つける方法だけを質問する場合、これは 1 つの方法です。

  • クラウドフロントから、ディストリビューション設定 (i アイコンの下) を確認し、ドメイン名をメモします: d3foqimq5fy14v.cloudfront.netに 1 つあり、これはpanchroma2013というタイトルの S3 バケット用です

  • S3 で、画像のプロパティ ペインを開き、リンク URL をコピーします。

  • そこにいる間に、ファイルのアクセス許可を再確認してください。Grantee: Everyone, yes を Open/Download に追加する必要がある場合があります

  • この画像のクラウドフロント URLは、私のクラウドフロント ドメイン名 + バケット名の後の S3 URL です。つまり:

    http://d3foqimq5fy14v.cloudfront.net/template/panchroma-website-design.png

これでうまくいくことを願っています!

于 2013-03-18T16:15:34.737 に答える