Для скачивания PDF-файла в JavaScript с использованием библиотеки Axios, вам потребуется создать и отправить HTTP-запрос на сервер, чтобы получить файл, а затем сохранить его на устройстве пользователя.
Первым шагом рекомендуется установить пакет Axios с помощью npm или использовать CDN для добавления его в ваш HTML-файл:
npm install axios
или
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
После установки или подключения Axios вам понадобится URL-адрес PDF-файла, который вы хотите скачать. Следующим шагом будет использование Axios, чтобы отправить GET-запрос на сервер и получить содержимое файла в виде потока.
Пример кода:
axios({ url: 'URL_Адрес_ПДФ-файла', method: 'GET', responseType: 'blob', // указываем, что ожидаем поток данных в виде blob }).then(response => { const url = window.URL.createObjectURL(new Blob([response.data])); const link = document.createElement('a'); link.href = url; link.setAttribute('download', 'file.pdf'); document.body.appendChild(link); link.click(); });
В приведенном выше коде мы создаем GET-запрос используя Axios и устанавливаем тип ответа 'blob', чтобы получить содержимое файла в виде потока. Затем мы создаем URL-объект с помощью функции window.URL.createObjectURL()
, передавая данные ответа в виде Blob. Далее мы создаем ссылку <a>
, устанавливаем ей атрибут href
равным URL-объекту и атрибут download
с указанием имени файла, в данном случае 'file.pdf'. Затем ссылку добавляем в тело документа <body>
. Наконец, используем link.click()
, чтобы инициировать процесс скачивания файла.
Обратите внимание, что URL-адрес PDF-файла должен быть доступен для загрузки на сервере. Если PDF-файл находится на другом домене, вы можете столкнуться с политикой безопасности браузера. Решение этой проблемы может затребовать настройку прав доступа на сервере.