XMLHttpRequest поддерживает сообщения о своём прогрессе: https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Monitoring_progress