Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何访问boto3 bucket.put\u对象的响应?_Amazon Web Services_Amazon S3_Boto3_Httpresponse_Put - Fatal编程技术网

Amazon web services 如何访问boto3 bucket.put\u对象的响应?

Amazon web services 如何访问boto3 bucket.put\u对象的响应?,amazon-web-services,amazon-s3,boto3,httpresponse,put,Amazon Web Services,Amazon S3,Boto3,Httpresponse,Put,查看bot3文档,我看到其中显示了一个响应,但我没有看到从中获取响应的方法 示例代码片段: s3 = boto3.resource( 's3', aws_access_key_id=redacted, aws_secret_access_key=redacted, ) s3.Bucket(bucketName).put_object(Key="

查看bot3文档,我看到其中显示了一个
响应
,但我没有看到从中获取响应的方法

示例代码片段:

        s3 = boto3.resource(
                's3',
                aws_access_key_id=redacted,
                aws_secret_access_key=redacted,
        )

        s3.Bucket(bucketName).put_object(Key="bucket-path/" + fileName, Body=blob, ContentMD5=md5Checksum)

        logging.info("Uploaded to S3 successfully")
这是如何实现的?

返回,该返回又具有方法

因此,沿着这些思路做一些事情就足够了(我的验证代码如下所示):


put\u对象
是一种阻塞操作。因此,它将阻止你的程序,直到你的文件上传。因此,实际上不需要
等待\u,直到\u存在。但是,如果您想确保上传确实通过,并且对象在S3中,您可以使用它。

响应信息都在
S3.object
中捕获。谢谢,但是我如何阅读
S3.object
?这是非常好的信息,谢谢。但是如何查看来自
put\u对象的HTTP响应呢?我正在寻找像
ETag
MD5
Status 200
等东西。
import boto3

s3 = boto3.resource('s3')

with open('test.img', 'rb') as f:

    obj = s3.Bucket('test-ssss4444').put_object(
            Key='fileName', 
            Body=f)
    
obj.wait_until_exists() # optional

print("Uploaded to S3 successfully")