Привет JavaScript гуру,Safari 9 XMLHttpRequest Blob загрузить файл
мне нужна функциональность загрузки файла с использованием XMLHttpRequest (с responseType = "сгустка"), который работает в Safari 9+.
На данный момент я использую FileSaver.js так:
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
// using FileSaver.js to save blob
saveAs(xhr.response, filename);
// notify download finished, resolve promise
defer.resolve(true);
}
};
xhr.send();
который отлично работает во всех основных браузерах, но не в текущей версии (9.x) в Safari. Я получаю сообщение «Не удалось загрузить ресурс: прервана загрузка кадра». Обычно загрузка - это zip-файл, но я также пытался установить «application/octet-stream».
У меня есть одно требование: мне нужно знать, когда загрузка закончится на стороне клиента, поэтому использование iframe не является вариантом (я думаю).
Я благодарен за любую подсказку, как загрузить файл в Safari с помощью XHR (без Flash).
Спасибо, Chris
лол (почти IE6) –