我在s3 (IBM )中有对象,我正在尝试为存储桶中的对象更新元数据,比如自定义用户元数据。我使用下面的代码片段来更新元数据。
但是当我在这之后检索对象时,我得到的是空内容。
import boto3 as client
s3 = client.resource('s3')
obj = s3.Bucket('MyBucket').Object('objectKey')
obj.put(Metadata={'name':'newName'})有没有其他方法可以做到这一点,或者我做错了吗?
发布于 2019-02-14 04:32:11
从上面粘贴的代码中可以看出,您的put调用中缺少一个结束的paren。当我测试它时,上面使用的语法可以工作:
>>> s3 = client.resource('s3')
>>> obj = s3.Bucket('my_bucket').Object('my_key')
>>> obj.put(Metadata={'foo': 'bar'})
{u'ETag': '"d41d8cd98f00b204e9800998ecf8427e"', 'ResponseMetadata': {'HTTPStatusCode': 200, 'RetryAttempts': 0, 'HostId': ...
>>> print obj.metadata
{'foo': 'bar'}https://stackoverflow.com/questions/54670565
复制相似问题