Bonjour à tous

J'ai un processus de conversion de fichiers lancé par un script PHP qui récupère des fichiers uploadés PUIS les convertit, et renvoie à la fin les urls...

Maintenant je voudrais afficher une jauge qui indique le progress du upload PUIS la conversion en cours (en bricolant un "indeterminate state") mais il semble que les handlers de la xhr ne permettent pas de récupérer des signaux corrects.

Voilà ce que j'obtiens dans FF avec un fichier de plusieurs Mo :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
upload.progress 0.41712747074468304
upload.progress 0.8961230685514022
upload.progress 0.9965576293818433              // la conversion a l'air de démarrer ici : j'attends ... et le reste arrive tout d'un coup ..
upload.progress 1
upload.load (une chaîne vide)                         // inutile, arrive trop tôt ?
progress 1
load (> REPONSE)
Ceci avec les déclenchements suivants :
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
xhr.addEventListener('load', function(e) {
	console.log('load', xhr.responseText);
}, false);
xhr.addEventListener('progress', function(e) {
	console.log('progress', e.loaded / e.total);
}, false);
 
xhr.upload.addEventListener('load', function(e) {
	console.log('upload.load', xhr.responseText);
}, false);
xhr.upload.addEventListener('progress', function(e) {
	console.log('upload.progress', e.loaded / e.total);
}, false);

Je voudrais donc récupérer le signal de fin du upload indépendamment de celui de la requête globale, y a t-il un moyen qui fonctionne évidemment dans tous les navigateurs ?

Merci par avance