Чтение потока ответов через XMLHttpRequest - PullRequest
0 голосов
/ 06 июля 2018

У меня есть код, который должен прочитать поток ответа и заполнить индикатор выполнения. Ответ сервера правильный. Проблема в updateProgress событие не запускается.

function load_binary_resource(url) {
    var req = new XMLHttpRequest();
    req.open('GET', url, false);
    req.addEventListener("progress", updateProgress);
    req.overrideMimeType('text\/plain; charset=x-user-defined');
    req.send(null);
    if (req.status != 200) return '';
    return req.responseText;
}
function updateProgress (oEvent) {
    if (oEvent.lengthComputable) {
        console.log('loading');
        var percentComplete = oEvent.loaded / oEvent.total * 100;
        // ...
    } else {
        console.log('something happening');
    }
}

1 Ответ

0 голосов
/ 06 июля 2018

Попробуйте изменить,

req.addEventListener("progress", updateProgress);

в

req.upload.addEventListener('progress', updateProgress, false);

События прогресса существуют как для загрузки, так и для передачи. События загрузки инициируются самим объектом XMLHttpRequest. События загрузки вызываются для объекта XMLHttpRequest.upload согласно Документация MDN

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...