Измените объект S3 CacheControl, используя boto3 - PullRequest
0 голосов
/ 26 февраля 2019

Я пытаюсь изменить атрибут CacheControl из файла, который уже находится в S3.Я обнаружил, что лучше всего копировать этот объект по тому же пути, меняя его метаданные.Код довольно прост:

    file_key = 'index.html'
    s3_object = s3_resource.Object(bucket_name, file_key)
    s3_object.copy_from(CopySource={'Bucket':bucket_name, 'Key':file_key},
        CacheControl='no-cache',
        MetadataDirective='REPLACE')

Этот код не работает без MetadataDirective='REPLACE', но из-за этого файл теряет все остальные метаданные.Я мог бы установить все метаданные вручную, но это может вызвать проблемы в будущем.

Есть ли способ изменить одни метаданные и сохранить все остальные?

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