我正在嘗試獲取上傳到 s3 存盤桶中的檔案的元資料值
#我必須專門將 boto3.resource('s3') 用于專案中的其他 api 呼叫。
我在元資料欄位下有以下可用資料
#元資料
Key=Content-Type
Value= application/json
下面是代碼
bucket= 'mybucket'
key='L1/input/file.json'
s3_resource = boto3.resource('s3')
object = s3_resource.Object(bucket,key)
metadata = object.metadata
但我得到低于錯誤
[ERROR] ClientError: An error occurred (403) when calling the HeadObject operation: Forbidden
誰可以幫我這個事。
uj5u.com熱心網友回復:
注意你的語法。這一行:
s3_client=boto3.resource('s3')
正在回傳 a resource,而不是 a client。
因此,這條線失敗了:
obj = s3_client.head_object(bucket,key)
因為head_object()不是可以在resource.
相反,請使用:
s3_resource = boto3.resource('s3')
object = s3_resource.Object('bucket_name','key')
metadata = object.metadata
它將提供元資料字典。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/318858.html
