Возможен ли вызов окна с подтверждением загрузки файла в Google Chrome?

Здравствуйте, друзья!

Есть сайт. С него скачивают программы (к примеру, exe-файлы). Необходимо, что-бы пользователь, при нажатии на ссылку с файлом, получал запрос на сохранение (Сохранить / Отменить или типа того, как это заведено в других браузерах). В Google Chrome отсутствует запрос подтверждения загрузки файла. :( Возможно ли это как то реализовать?

p.s. речь о стандартном запросе.

Спасибо.
  • Вопрос задан
  • 19921 просмотр
Решения вопроса 1
avalak
@avalak
Ну, строго говоря Chrome запрашивает подтверждение при загрузке определённых типов файлов (exe, pdf, deb, etc).

Я так понимаю суть задачи в том чтобы пользователь подтвердил своё желание загрузить файл / принять условия использования?
Есть стандартный диалог confirm() или можно на js модальное окно сделать.

Или вам нужно что-то вроде защиты от хотлинкинга? Чтобы окно с подтверждением появлялось при обращении к файлу на сервере и не обязательно с сайта.
Ответ написан
Пригласить эксперта
Ответы на вопрос 11
asm0dey
@asm0dey
Я понимаю, что то, что я сейчас предложу — олдскул и оверкилл, но можно сделать Java Applet, который будет спрашивать, куда сохранить файл, а потом сам его скачивать.
Ответ написан
wersoo
@wersoo
У хрома существует настройка поведения при скачивании:
image
И по умолчанию диалоговое окно отключено и, насколько я понял, узнать на клиенте состояние этого пункта невозможно. С другой стороны, чаще всего у людей оно отключено сознательно и незачем переопределять то, что выбрал сам пользователь. Более того, тупо захардкодив такое решение для хрома, вы обрекаете людей с недефолтной настройкой на двойное диалоговое окно.
Ответ написан
Комментировать
@Adamska Автор вопроса
Попробовал решить проблему уведомлением, но Хромиум иногда в таких окнах дает дополнительно: «Предотвратить создание дополнительных окон на этой странице» с галочкой.
Ответ написан
Methos
@Methos
onclick=«return confirm('Хотите скачать?');»
Ответ написан
Комментировать
Prototik
@Prototik
А зачем он? Файл сразу скачивается — если его надо открыть, то прямо в процессе загрузки можно по нему кликнуть, откроется.
Диалоги эти всегда мне не нравились, отвлекают от более важных вещей.
Ответ написан
agranom555
@agranom555
НУ вроде есть только такое. Предлагает указать куда сохранять файл. Соответственно там можно нажать отмена и не качать. Другого к сожалению нет(
Ответ написан
@Adamska Автор вопроса
В общем задача такая: нужно что бы пользователь обязательно подтверждал загрузку файла. Во всех браузерах кроме Хрома это подтверждение есть в виде диалога Сохранить/Отменить. Потому я и подумал, что может есть какой то способ попросить браузер давать такой диалог (Сохранить как…).

Лично мне на ум пришел лишь такой способ: идентифицировать пользователя по Webkit и выдавать ему вместо прямой ссылки ссылку с JS-окошком, в котором уже и будет прямая ссылка. Но это костыли какие то :((((((((
Ответ написан
Комментировать
freeek
@freeek
Так можно сделать, что, если браузер Chrome, то выводить какой-нибудь jQuery dialog с подтверждением и лишь потом стандартное окошко браузера. Не вариант?
Ответ написан
nazarpc
@nazarpc
Open Source enthusiast
Отдавайте файл скриптом, отправляя заголовок:
Content-Disposition: attachment; filename="your_file.zip"
Ещё можете тип файла указать заголовком:
Content-Type: application/zip

Это принудительно вызовет диалоговое окно сохранения/открытия файла.
Ответ написан
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
Есть список расширений, по которым идет обязательный запрос — исполняемые, например.
Окошко на жабаскрипте — ну, жаба скрипт можно и отключить, и тут вы тоже ничего не узнаете — я не знаю, пишется ли в заголовках наличие жабы.
Из вариантов еще, в общем html5, flash загрузчик, чтобы предусмотреть все возможные варианты окошка.
Ответ написан
Комментировать
TheMengzor
@TheMengzor
Safari тоже не спрашивает, сразу качает и это супер-мега-пупер удобно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы