Amazon web services 如何访问boto3 bucket.put\u对象的响应?
查看bot3文档,我看到其中显示了一个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="
响应
,但我没有看到从中获取响应的方法
示例代码片段:
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")