Подтвердить что ты не робот

Атрибут загрузки Chrome не работает

Я испытал неожиданное поведение Chrome с самой новой версии: Хотя в Firefox этот код работает Отлично:

<a id="playlist" class="button" download="Name.xspf" href="data:application/octet-stream;base64,PD94ANDSOON" style="display: inline;">Download Me</a>

Он не работает в Chrome (просто загружая файл с именем "Загрузка" ), но он работал очень хорошо. Что мне нужно изменить, чтобы он снова работал?

4b9b3361

Ответ 1

После некоторых исследований я наконец нашел вашу проблему.

< > атрибут загрузки:

Если HTTP-контент Content-Disposition: присутствует и дает другое имя файла, чем этот атрибут, заголовок HTTP имеет приоритет над этим атрибутом.

Если этот атрибут присутствует, а Content-Disposition: установлен в строку, Firefox дает приоритет Content-Disposition, например, для случая с именем файла, в то время как Chrome отдает приоритет атрибуту загрузки.

Источник

HTTP-заголовок Content-Disposition

Ответ 2

Считая комментарии, у меня была такая же проблема, как и при переполнении буфера, и нашел это в этом вопросе:

Я предполагаю, что веб-страница и загрузка находятся на разных началах. Мы больше не соблюдаем атрибут загрузки, предлагаемое имя файла для запросов на перекрестный поиск. Нажатие на ссылку по-прежнему инициирует загрузку. Но имя файла происходит только от факторов, исключительно зависящих от сервера (например, заголовок Content-Disposition в ответе и URL-адреса).

Так что я не мог заставить его работать...: (

Ответ 3

Это может быть решено добавлением атрибута target="_blank" в href.

Как это:

Save sprites.svg as 
<a target="_blank" download="somefilename.svg"
href="https://cdn.sstatic.net/Img/unified/sprites.svg"
>somefilename.svg</a>

Ответ 4

Перейдите в Chrome Нажмите "Настройки", и вы увидите всплывающую новую страницу в окне браузера Chrome. Прокрутите вниз до "Дополнительные настройки", найдите группу "Загрузки" и очистите параметры автоматического открытия. В следующий раз, когда вы загрузите элемент, он будет сохранен, а не открыт автоматически.