Хобрук: Ваш путь к мастерству в программировании

Какую конфигурацию S3 cors следует использовать для атрибута загрузки Firefox html5?

Я использую атрибут загрузки HTML5, чтобы пользователи могли загружать видеофайл с S3:

<a href="https://mybucket.s3.amazonaws.com/video.mp4" download="video.mp4">Download</a>

Это отлично работает в Chrome и IE. Из следующего вопроса я понимаю, что Firefox хочет, чтобы CORS был включен, чтобы позволить атрибуту загрузки работать с перекрестным источником:

Атрибут загрузки HTML5 не работает при загрузке с другого сервера , даже если для Access-Control-Allow-Origin задано значение all (*)

Я включил CORS в своей корзине S3, используя следующую технику:

http://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html

И это моя политика CORS:

<CORSConfiguration>
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <AllowedHeader>Authorization</AllowedHeader>
    </CORSRule>
</CORSConfiguration>

Firefox по-прежнему не хочет загружать видео. Любая помощь, подсказки или предложения больш были бы оценены. Спасибо.


  • какую ошибку вы получаете? Пожалуйста, поделитесь снимком экрана или скопируйте и вставьте эти ошибки. 12.10.2017
  • Когда я нажимаю на ссылку для загрузки с помощью Firefox, видео в формате mp4 открывается в новой вкладке вместо загрузки. 12.10.2017

Ответы:


1

Ваша политика CORS требует заголовка авторизации. Измените это на подстановочный знак.

В AllowedHeader измените на <AllowedHeader>*</AllowedHeader>

11.10.2017

2

Вам нужно сделать пару проверок,

Убедитесь, что тип контента application/octet-stream. По умолчанию он такой же, если вы его не изменили.

Firefox по-разному обрабатывает файлы mp4,

1. Enter about:config in the address bar
2. Hit Enter
3. Click I’ll be careful, promise!
4. In the Search field, enter media.windows-media-foundation.enabled
5. Double-click the True in the media.windows-media-foundation.enabled result to change it to False
6. Close the browser tab

Затем Firefox должен загрузить файл.

Ссылка:

https://jdrch.wordpress.com/2013/10/01/how-to-prevent-firefox-from-playing-direct-link-mp4-files-in-the-browser/

Надеюсь, поможет.

12.10.2017
  • Спасибо за помощь. Но просить всех пользователей изменить конфигурацию Firefox — это не вариант. 19.10.2017
  • Новые материалы

    #093 | Моделирование вспышки эпидемии с помощью JavaScript — Часть 3
    TLDR: Я сделал симуляцию вспышки эпидемии, в которую можно поиграть здесь . Мой холст, моя сцена Мой HTML — это всего лишь один div с классом stage, и вот как я настроил на нем свой объект..

    numberToString.js (8kyu 16)
    Алгоритм кодовых войн Проблема Нам нужна функция, которая может преобразовать число в строку. 숫자를 문자열로 변환하는 함수를 작성해라. Решение 01 function numberToString(n) { return n.toString(); }..

    Лучшие практики для быстрого изучения языка программирования
    Изучение языка программирования может быть сложной задачей, но при правильном подходе определенно возможно быстро выучить язык программирования. Хорошее понимание языка программирования может..

    Использование данных из Adobe Analytics в предложениях Adobe Target
    Я уверен, что все видели эти всплывающие окна в интернет-магазинах, которые говорят что-то вроде « 15 человек просматривают этот товар прямо сейчас! » или « 105 человек из Мичигана купили это..

    Машинное обучение и его набор данных в CreateML
    Когда я впервые начал учиться в Apple Developer Academy, у меня был момент неуверенности в моем интересе к машинному обучению. Нужно ли мне сменить карьеру моей мечты с специалиста по данным на..

    Обучение требует воли
    Недавно я прочитал отличную статью Шейна Легга и Джоэла Венесса из DeepMind. http://arxiv.org/pdf/1109.5951v2.pdf В статье «универсальный интеллект» агента π определяется как: Поэтому..

    Безопасность по дизайну делает всех счастливыми
    Заложенная безопасность делает всех счастливыми Если вы никогда не смотрели Louis C.K. рассказать о том, как Все удивительно, и никто не счастлив ; побаловать себя. Сделайте это прямо..