繁体   English   中英

为什么boto3 s3对象缺少存储类属性?

[英]Why storage class attribute is missing for boto3 s3 object?

运行存储类的检索时

import boto3

s3 = boto3.resource('s3')
key = s3.Object('bucket_name','key')
print key.storage_class

它返回None

我的实验表明, Standard存储类返回的值为None (就像您所做的那样)。

但是,我设法获得了其他存储类(例如STANDARD_IAGLACIER有效值。

根据AWS文档:S3为除标准存储类之外的所有对象返回x-amz-storage-class标头。 https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html

我正在使用以下方法来获取存储类变量:

import boto3

session = boto3.session.Session(profile_name='dev')
s3_resource = session.resource('s3', region_name=region)                 
obj_meta = s3_resource.Object(bucket, key_object)

obj_storage_class = 'STANDARD' if obj_meta.storage_class is None else str(obj_meta.storage_class)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM