Я авторизуюсь на сайте из IE. Как скачать файл через консоль браузера? Пробую следующий сниппет - выдается ошибка. По сути действие js-кода аналогично сохранению файла вручную. Такое ощущение что js-качает сам по себе, а не использую куки браузера.
https://www.gosuslugi.ru/api/lk/v1//orders/428297648/history/1083114266/files/SUxT/download 401 (Unauthorized)
...
function download(url, fileName) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onprogress = function(event) {
if (event.lengthComputable) {
var percentComplete = (event.loaded / event.total)*100;
//yourShowProgressFunction(percentComplete);
}
};
xhr.onload = function(event) {
if (this.status == 200) {
_saveBlob(this.response, fileName);
}
else {
//yourErrorFunction()
}
};
xhr.onerror = function(event){
//yourErrorFunction()
};
xhr.send();
}
function _saveBlob(response, fileName) {
if(navigator.msSaveBlob){
//OK for IE10+
navigator.msSaveBlob(response, fileName);
}
else{
_html5Saver(response, fileName);
}
}
function _html5Saver(blob , fileName) {
var a = document.createElement("a");
document.body.appendChild(a);
a.style = "display: none";
var url = window.URL.createObjectURL(blob);
a.href = url;
a.download = fileName;
a.click();
document.body.removeChild(a);
}
Что такое 401 ошибка:
Код ответа на статус ошибки HTTP 401 Unauthorized клиента указывает, что запрос не был применен, поскольку ему не хватает действительных учетных данных для целевого ресурса.
То есть файл который вы хотите получить, блокируется ресурсом т.к. он думает что вы неавторизованный пользователь, аноним.
Вам нужно передавать данные об авторизации в Header (Заголовке запроса). Методом XMLHttpRequest.setRequestHeader()
xhr.setRequestHeader('Authority', '_ТОКЕН_АВТОРИЗАЦИИ');
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Нужно выбрать строку из бд, если использовать производить выборку по числовому столбцу то все прекрасно работает, но если по столбцу со строкой...
Хочу командой GROUP BY сделать группировку, по полю title, но по значению ДО первого пробела
Есть сайт на котором должен быть скролл по секциям, наподобие вертикального слайдера и если контент в секции больше высоты экрана он должен...