繁体   English   中英

使用Django的boto3将图像上传到Amazon s3

[英]Uploading images to amazon s3 using boto3 from django

导入boto3

从botocore.client导入配置

ACCESS_KEY_ID ='XXXXXXXXXXXXXXXX'

ACCESS_SECRET_KEY ='XXXXXXXXXXXXXXXXXXXXXXXX'

BUCKET_NAME =' https: //s3.amazonaws.com/test-dev-bkt'

数据=打开('/home/kuliza270/Desktop/workspace/hdfc-csrm-backend/webapp/statics/img/headerLogoNew.jpg','rb')

s3 = boto3.resource('s3',

aws_access_key_id=ACCESS_KEY_ID,
aws_secret_access_key=ACCESS_SECRET_KEY,
config=Config(signature_version='s3v4')

s3.Bucket(BUCKET_NAME).put_object(Key ='logo.jpg',Body = data)

打印(“完成”)

BUCKET_NAME中的值不正确,根据文档,您的存储桶名称为test-dev-bkt:

在路径样式的URL中,存储桶名称不是域的一部分(除非您使用特定于区域的终结点)。 例如:

 US East (N. Virginia) Region endpoint, http://s3.amazonaws.com/bucket Region-specific endpoint, http://s3-aws-region.amazonaws.com/bucket 

在路径样式的URL中,您使用的端点必须与存储桶所在的区域匹配。 例如,如果您的存储桶位于南美(圣保罗)地区,则必须使用http://s3-sa-east-1.amazonaws.com/bucket端点。 如果您的存储桶位于美国东部(弗吉尼亚北部)地区,则必须使用http://s3.amazonaws.com/bucket端点。

暂无
暂无

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

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