2014-01-27 61 views

回答

1

get_key()方法boto.s3.bucket.Bucket對對象執行HEAD請求以驗證它是否存在。如果您是確保對象存在並且不希望HEAD請求的開銷,乾脆直接創建Key對象是這樣的:

import boto.s3 
from boto.s3.key import Key 

conn = boto.s3.connect_to_region('us-east-1') 
bucket = conn.get_bucket('mybucket', validate=False) 
key = Key(bucket, 'mykeyname') 

這就避免了HEAD請求,仍然可以讓你執行的正常操作關鍵對象。但是,請注意,HEAD請求會檢索某些有關密鑰的元數據,例如其內容類型,大小,ETag等。直接構建的Key對象不具有該信息。

+0

要小心,如果存儲桶不存在,你會得到一個異常。 – Vame

相關問題