Я пытаюсь создать Presigned-URL, используя boto3 ниже
s3 = boto3.client(
's3',
aws_access_key_id=settings.AWS_ACCESS_KEY,
aws_secret_access_key=settings.AWS_ACCESS_SECRET,
region_name=settings.AWS_SES_REGION_NAME,
config=Config(signature_version='s3v4')
)
metadata = {
'test':'testing'
}
presigned_url = s3.generate_presigned_url(
ClientMethod='put_object',
Params={
'Bucket': settings.AWS_S3_BUCKET_NAME,
'Key': str(new_file.uuid),
'ContentDisposition': 'inline',
'Metadata': metadata
})
Итак, после того, как URL сгенерирован, и я пытаюсь загрузить его на S3 с помощью Ajax, он дает 403 запрещенных.Если я удаляю метаданные и ContentDisposition при создании URL-адреса, он успешно загружается.
Версия Boto3: 1.9.33
Ниже приведен документ, на который я ссылаюсь: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.generate_presigned_url