2011-09-13 8 views
2

以下のコードはAWS 3から1つのファイルを取得できますが、フォルダはどうですか?AWS S3 SDKファイルの代わりにフォルダを取得

var _key:int=Account.lessons[dl_i].id; 
var dest:String = Conf.Dir+_key; 
var request:GetObjectRequest = new 
GetObjectRequest().WithBucketName(Conf.bucketName).WithKey(_key+""); 
var response:GetObjectResponse = client.GetObject(request); 
response.WriteResponseStreamToFile(dest); 

答えて

4

Amazon S3のフォルダのようなものはありません。これは "フラット"ファイルシステムです。フォルダに近づくほど、ファイル名にfoo/bar/filename.txtのようなプレフィックスが追加されます。 いくつかのS3ツールがフォルダ内にあるかのように見せてくれますが、このコンセプトはS3にはありません。

この関連スレッドを参照してください:以下Amazon s3 Folders Problem

1

javascriptのコードは、「フォルダ」内のファイルをカウントします。実際には、@ Viccariはフォルダがないと指摘しているので、名前の同じ部分を共有するオブジェクトをリストします。 data.Contentsは "フォルダ内のファイル"の詳細を含む配列になりますので、 "フォルダを取得"します。詳細について

var bucket = 'the_bucket_name'; 
var path_to_folder = 'path/to/the/folder/'; 
var params= {Bucket: bucket, Delimiter: path_to_folder }; 
s3.listObjects(params, function (err, data) { 
    if (err) { 
     console.log('Could not load objects from S3', err); 
    } else { 
     console.log('Loaded ' + data.Contents.length + ' items from S3'); 
    } 
}); 

、上から来ている

関連する問題