1
有沒有一種方法可以創建一個Key
未經boto驗證的連接? docs表示有一個validate
參數,但它不存在於2.23源文件中(據推測該文件與文檔版本相同)。如何在沒有驗證的情況下創建s3 Key對象?
我需要一種解決方法來避免對密鑰進行查找。
有沒有一種方法可以創建一個Key
未經boto驗證的連接? docs表示有一個validate
參數,但它不存在於2.23源文件中(據推測該文件與文檔版本相同)。如何在沒有驗證的情況下創建s3 Key對象?
我需要一種解決方法來避免對密鑰進行查找。
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對象不具有該信息。
要小心,如果存儲桶不存在,你會得到一個異常。 – Vame