Czy funkcja onprogress może zostać dodana do jQuery.ajax () przy użyciu xhrFields?

Jak zasugerowano tutaj:https://gist.github.com/HenrikJoreteg/2502497, Staram się dodać funkcję onprogress do mojegojQuery.ajax() Udostępnianie pliku. Przesyłanie działa dobrze, a zdarzenie onprogress zaczyna działać, ale nie tak, jak oczekiwałem - zamiast strzelać wielokrotnie w pewnym przedziale czasu, wystrzeliwuje tylko raz, po zakończeniu przesyłania. Czy istnieje sposób na określenie częstotliwości odświeżania onprogress? Czy próbuję zrobić coś, czego nie można zrobić? Oto mój kod:

$.ajax(
{
    async: true,
    contentType: file.type,
    data: file,
    dataType: 'xml',
    processData: false,
    success: function(xml)
    {
        // Do stuff with the returned xml
    },
    type: 'post',
    url: '/fileuploader/' + file.name,
    xhrFields:
    {
        onprogress: function(progress)
        {
            var percentage = Math.floor((progress.total / progress.totalSize) * 100);
            console.log('progress', percentage);
            if (percentage === 100)
            {
                console.log('DONE!');
            }
        }
    }
});

questionAnswers(3)

yourAnswerToTheQuestion