Estoy probando la nueva característica XMLHTTPRequestUpload para cargar algunos archivos a un script php, en su mayoría funciona bien, la carga comienza, obtengo la respuesta de finalización, etc., pero el progreso no Parece que funcionaEl progreso de carga de XHR es 100% desde el inicio
Buscando que el valor de event.loaded - En Firefox me parece obtener un valor aleatorio entre 0 y el tamaño del archivo; en Chrome (donde trabajo en su mayoría) obtengo el tamaño total del archivo, aunque el estado preparado no ha alcanzado el '4' y la ventana Herramientas del desarrollador todavía muestra el archivo que se va a cargar?
¿Alguna idea?
Aquí está mi código:
var xhr = new XMLHttpRequest()
xhr.upload.addEventListener('progress', function(event) {
if (event.lengthComputable) {
$('ajaxFeedbackDiv').innerHTML = event.loaded + '/' + event.total;
}
}, false);
xhr.onreadystatechange = function(event) {
if (event.target.readyState == 4) {
updateFileList();
}
};
xhr.open("POST", "_code/upload.php");
xhr.setRequestHeader("Cache-Control", "no-cache");
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.setRequestHeader("X-File-Size", file.size);
xhr.setRequestHeader("X-File-Type", file.type);
xhr.setRequestHeader("Content-Type", "multipart/form-data");
xhr(file);
Muchas gracias
Ben
¿Ha encontrado alguna solución o solución para el problema? Actualmente estoy experimentando lo mismo, pero parece depender de tu conexión de red. Funciona como se esperaba en una ubicación y salta al 100% de la otra. – unclenorton
Estoy experimentando el mismo problema. Curiosamente, parece que esto solo me sucede cuando estoy ejecutando en localhost: cuando despliego a nuestros servidores de desarrollo o prod, el valor cargado vuelve como era de esperar. – brettjonesdev