Как загрузить сжатый контент на диск S3 в виде обычного текста? - PullRequest
0 голосов
/ 08 января 2020

У меня есть HTML данные, хранящиеся в корзине S3, которая используется как сайт c, который хранится в сжатом виде. Хотя я могу получить доступ к своему сайту S3 правильно, и браузер знает, как распаковать его, я не могу загрузить его с помощью AWS CLI, потому что загруженные исходные данные остаются сжатыми (а не распакованными после загрузки) даже после копирования на диск и, таким образом, получается искаженным при открытии через текстовый редактор или браузер.

Я пытался явно передать кодировку содержимого, чтобы преобразовать сжатый контент на S3 в простой текст, но загружаемый файл по-прежнему имеет сжатые байты, а не необработанные UTF-8. Вот команда, которую я пробовал:

aws s3 cp s3://mys3bucket.com/index.html ./test.html --content-encoding "gzip" --content-type "text/html"

1 Ответ

1 голос
/ 08 января 2020

После загрузки (или во время) вы можете самостоятельно распаковать данные. Если вы используете вариант Unix, это будет сделано путем передачи вывода в zcat следующим образом:

aws s3 cp s3://mys3bucket.com/index.html ./test.html --content-encoding "gzip" --content-type "text/html" | zcat

Вы также можете сохранить данные в файле, а затем распаковать его.

Разумно было бы распаковать его на стороне S3, потому что тогда вам пришлось бы передавать намного больше данных (несжатая версия).

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