pingo
@pingo

Браузеры блокируют такую фичу?

отправляю get аяксом, на php скрипт сервера, который
ловит и в зависимости от параметров должен отдать файл
на скачку. вот оконцовка сего действия на сервере:
header("Content-Type: application/octet-stream");
        header("Content-Transfer-Encoding: Binary");
        header("Content-disposition: attachment; filename=$file");
        header('Content-Transfer-Encoding: binary');
        header('Expires: 0');
        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
        header('Pragma: public');
        header('Content-Length: ' . filesize($url));
        ob_clean();
        flush();
        file_put_contents("t.txt", filesize($url)); //лог есть, значит get приходит 
        readfile($url);


$.get( "download?q="+param );// так не работает

window.location="download?q="+param; // а так работает

поскольку в цепочке используется $_SERVER['HTTP_X_REQUESTED_WITH'] поэтому и спрашиваю, может кто сталкивался?

PS для уточнения, мне надо спровоцировать закачку файла отправкой get запроса аяксом.
  • Вопрос задан
  • 159 просмотров
Пригласить эксперта
Ответы на вопрос 1
@AaAAxzz
С помощью технологии ajax файлы не скачиваются. Вы можете использовать $.get и получить содержимое файла, после добавить скрытый фрейм с тем же урл адресом на файл, но тем не менее скрытно от пользователя закачать ему файл не получится (я не проверял теорию, но думаю хром скушает).
Ответ написан
Ваш ответ на вопрос

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

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