@Roma789

Как создать страницу для скачивания файла по ajax запросу?

Привет,я создал одну страницу php при открытии которой скачивается документ,мне надо создать ещё одну страницу с кнопкой,при нажатии на которую будет делаться ajax-запрос на первую страницу и скачиваться документ
  • Вопрос задан
  • 69 просмотров
Пригласить эксперта
Ответы на вопрос 2
Starina_js
@Starina_js
Веб-программист
Как-то так?
let response = await fetch('file.php');
let blob = await response.blob(); // скачиваем как Blob-объект

let link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.click(); // клик, чтобы начать скачку
URL.revokeObjectURL(link.href);


Если у вас там вторая страница имеет свою верстку и свою ссылку, привяжитесь к ней
Ответ написан
Комментировать
Adamos
@Adamos
Аякс используется не для скачивания, а для прозрачного обмена информацией.
Для получения файла по ссылке достаточно одной этой ссылки.
Если действительно необходим именно аякс-запрос, можно извратиться, получив результат, перекодировав его в base64 и сформировав в текущем документе ссылку с href="data:..., и download="{имя файла}".
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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