4

S3に次のバケットが設定されているとします

マイバケット/マイサブバケット

また、MySubBucket から Web サイトに静的メディアを提供することを計画しています (ユーザーがアップロードした画像など)。S3 構成が現在設定されているように見える方法では、最上位バケット「MyBucket」を公開する方法がないため、これを模倣するには、そのバケット内のすべての個々のアイテムを挿入後に公開する必要があります。

「MySubBucket」のようなサブバケットを公開することはできますが、現在私が抱えている問題は、テスト画像をそのバケットに挿入するために boto を呼び出す方法を見つけようとしていることですか? 誰でも例を挙げてもらえますか?

ありがとう

4

1 に答える 1

2

/実際には、ファイル名の前にサブバケット名とaを付ける必要があります。次のコードスニペットは、'test.jpg'MySubBucketに呼び出されるファイルを配置します。はk.make_public()そのファイルを公開しますが、必ずしもバケット自体である必要はありません。

from boto.s3.connection import S3Connection
from boto.s3.key import Key

connection = S3Connection(AWSKEY,AWS_SECRET_KEY)

bucket = connection.get_bucket('MyBucket')
file = 'test.jpg'
k = Key(bucket)
k.key = 'MySubBucket/' + file
k.set_contents_from_filename(file)
k.make_public()
于 2012-12-05T21:03:09.710 に答える