使用Boto3使用Python将图像上传到Amazon S3的最有效方法

时间:2017-05-06 03:14:40

标签: python boto3

我实施Boto3将文件上传到S3,一切正常。我正在做的过程如下:

我从FileReader Javascript对象获取base64图像。然后我通过ajax将base64发送到服务器,我解码base64图像并生成一个随机名称来重命名key参数

data = json.loads(message['text'])
dec = base64.b64decode(data['image'])
s3 = boto3.resource('s3')
s3.Bucket('bucket_name').put_object(Key='random_generated_name.png', Body=dec,ContentType='image/png',ACL='public-read')

这种方法很好但是对性能的尊重,有没有更好的方法来改进它?

1 个答案:

答案 0 :(得分:4)

我使用了它,我相信它更有效和pythonic。

    import boto3
    s3 = boto3.client('s3')
    bucket = 'your-bucket-name'
    file_name = 'location-of-your-file'
    key_name = 'name-of-file-in-s3'
    s3.upload_file(file_name, bucket, key_name)