2012-09-06 6 views
8

私は、ユーザーが写真をアップロードして共有できるようにiPhoneアプリを開発しています。私はS3を使用して、アップロードされた画像と処理された画像(例えば、サムネイル、縮小画像)を保存したいと思います。私はEC2インスタンスにAWS PHP APIをインストールしました。私の質問は です。1)iPhoneアプリからアップロードした写真は、最初にEC2ディレクトリに移動し、S3バケットにコピーするか、S3に直接アップロードする必要がありますか? 2)S3バケットの下にPHP APIを使用して異なるフォルダを作成するにはどうすればいいですか?フォルダからファイルを読み込む方法は?PHP API経由でAmazon S3バケットの下にフォルダを作成するには?

ありがとうございます!

答えて

9
  1. 答えがここで見つけることができます: Direct upload to s3 without the use of a production server

  2. 私はPHP SDKを使用したことがありませんが、私はAWS SDK for PHP 1.5.14 documentation を拾い読みして、あなたが利用する必要があります。次のAPIに出くわしました:

    a)create_object:これを使用してオブジェクトをバケットに配置します。ファイル名を指定します。異なるフォルダを作成する方法を尋ねました。ファイル名への完全なパスが含まれます。たとえば、 "photo1.jpg"というファイルに名前を付ける代わりに、 "user1/vacation/photo1.jpg"という名前を付けます。

    b)get_object_list:このAPIは、いくつかの基準が与えられたオブジェクトのリストを返します。特定のフォルダからすべてのオブジェクトを読み取る場合は、その接頭辞をフォルダのパスとして指定します。たとえば、「user1/vacation /」というフォルダ内のすべてのファイルを検索する場合は、「user1/vacation /」という接頭辞を指定します。

19

はい、s3 SDKを使用して新しいフォルダを作成することが可能です。

<?php 

/* abc is the folder name */ 

$s3->putObject(array( 
        'Bucket' => $bucket, 
        'Key' => "abc/", 
        'Body' => "", 
        'ACL' => 'public-read' 
       )); 
怒鳴るのコードを試してみてください
関連する問題