xhr cargando progreso mientras usa expressjs multer

Estoy tratando de usar XHR para rastrear el progreso de carga, pero en mi devolución de llamada en curso en event.total solo obtengo Content-Length del encabezado de respuesta en lugar de cargar el tamaño del archivo:

xhr.onprogress = (event) => {
  console.log('Progress ' + event.loaded + '/' + event.total);
}

Uso Multer para manejar la carga de archivos y parece que no está disponible para manejar la carga de archivos de forma predeterminada:https://github.com/expressjs/multer/issues/243

Así que traté de manejar la carga con progress-stream:

  var p = progress({ time: 1 });
  request.pipe(p);

  p.on('progress', function() {
    console.log('Progress...');
  });

Pero funciona de la misma manera, solo obtengo el "Progreso ..." en el registro y en el evento XHR onprogress.total Solo tengo el valor Content-Length en lugar del valor del tamaño del archivo. Ayuda por favor, ¡no tengo idea de cómo solucionarlo!

Respuestas a la pregunta(1)

Su respuesta a la pregunta