Amazon S3 не надсилає заголовок типу Content


10

У мене є додаток, який завантажує вміст з різних джерел. Він спирається на заголовок "Тип вмісту", встановлений на зображеннях. Більшість веб-серверів роблять це правильно, але, схоже, сервер Amazon S3 не встановлює Content-Type.

Я припускаю, що сервери Amazon налаштовані правильно, і в чому може бути проблема? Ці зображення не завантажені правильно? Або я не повинен покладатися на встановлений тип вмісту?

Приклад

Дякую


Я вважаю, що ви можете встановити тип вмісту, завантажуючи файл на Amazon S3. Я не знаю, що це стосується заголовків типу вмісту за замовчуванням. І це, очевидно, не допомагає вам, коли це не ваші файли.
WheresAlice

Я це бачив, але не маючи облікового запису, я не можу його спробувати. Знання відповіді не виправить мою проблему, але може запропонувати мені обійтись, не покладаючись на тип вмісту.

Відповіді:


7

Файли, завантажені в S3, повинні повідомити заголовок типу вмісту. Не існує за замовчуванням визначення типу вмісту, як те, що ви можете зробити на "звичайному" веб-сервері вмісту (що не буде поганою ідеєю!) Для папки.


1

Під час завантаження об’єктів у S3 у вас є можливість встановити тип MIME, який буде повернутий у заголовку Content-Type клієнтам. S3 не додасть цей заголовок самостійно, тому якщо користувач не встановив це значення, жоден заголовок Content-Type не повернеться.

Серверам HTTP не потрібно надавати заголовок типу вмісту, тому я б запропонував механізм резервного копіювання. Можливо, ви могли подивитися URL-адресу та здогадатися про розширення файлу? Це трохи хак, але це спрацювало б у прикладі, який ви навели принаймні.


1

Вам потрібно встановити це.

На консолі управління aws, якщо перейти до відповідного файлу, ви можете натиснути на "властивості". Потім внизу екрана на метаданих. Якщо для типу Key Content Type встановлено, змініть його на потрібне, інакше додайте новий ключ, виберіть Content-Type і встановіть його на відповідне значення.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.