Загрузка изображений на Amazon S3 с помощью Boto3 от Django - PullRequest
0 голосов
/ 28 ноября 2018

импорт boto3

из botocore.client import Config

ACCESS_KEY_ID = 'XXXXXXXXXXXXXXXX *

ACCESS_SECRET_KEY =' XXXXXXXXXX * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX9*https://s3.amazonaws.com/test-dev-bkt'

data = open ('/ home / kuliza270 / Desktop / рабочая область / 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)

печать («Готово»)

1 Ответ

0 голосов
/ 28 ноября 2018

Неверное значение в 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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...