使用boto3

时间:2017-02-24 19:53:07

标签: python amazon-s3 boto3 preconditions

在boto2上,我们可以使用Key对象的名称作为键来存储对象,并且在头部dict参数内的前提条件(即If-Match,If-None-Match等)将与PUT一起发送请求。

示例:

# assume both bucket and key are created beforehand
fp_a = FakeWriteFile(file_size, 'A')
key.set_content_from_file(fp_a, headers={'If-Match': '*'})

现在对于boto3,至少有几个API可以让我们将一个对象放在一个桶中,如:

fp_a = FakeWriteFile(file_size, 'A')
bucket.Object('foo').put(Body=fp_a)

或者,使用低级别S3客户端:

bucket.put_object(Key='foo', Body=fp_a) 

对于boto3上面的两种情况,我需要在哪里添加前置条件以确保那些PUT请求是否满足所有条件,类似于boto2&#39s的头参数,前提条件设置在?我试图找到有关boto3 API DOC的信息,但这些先决条件仅针对GET操作设置:https://boto3.readthedocs.io/en/latest/reference/services/s3.html

谢谢!

1 个答案:

答案 0 :(得分:0)

S3实际上忽略了PUT请求中的那些参数。