Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

261
Vistas
React-Native, iOS, XHR: el evento de progreso XHR no se activa en iOS al descargar el tipo de respuesta Blob/Arraybuffer

como dice el título, noté un comportamiento extraño al intentar suscribirme al evento de "progreso" que debería ser activado por una llamada XHR.

NB: Los enlaces utilizados a continuación son solo para fines de prueba, necesito descargar un archivo grande (alrededor de 100 MB) y leer cuántos bytes ya he descargado del evento "progreso". Sefram tenía un archivo pesado alojado en línea donde pude probar

 export default function dlTest(dlCalled, nextTest, settings) { if (dlCalled) return; dlCalled = true; let xhr = new XMLHttpRequest(); xhr.addEventListener("progress", (e) => console.log("progress", e.loaded)); xhr.addEventListener("load", (e) => console.log("loaded", e.loaded)); xhr.addEventListener("error", () => console.log("error")); let zipAddress = "https://www.sefram.com/images/products/photos/hi_res/BK1760A.zip"; let jpgAddress = "https://www.sefram.com/images/products/photos/hi_res/207030301.jpg"; let documentAddress = "https://www.sefram.com/en/download/high-resolution-images.html"; xhr.open("GET", zipAddress, true); xhr.responseType = "blob"; xhr.send(); }

Básicamente, necesito leer cuántos bytes he descargado desde que comenzó la llamada. Para resumir mis pruebas:

  • iOS:
    • Llame documentAddress && Response-Type: document : activa el evento de progreso pero no actualiza event.loaded (permanece en 0). Puede intentarlo usted mismo con documentAddress.

    • Llame documentAddress && Response-Type: blob/arraybuffer : no activa ningún evento de progreso

    • Llame zipAddress && Response-Type: document No activa ningún evento de progreso

    • Llame zipAddress && Response-Type: blob/arraybuffer No activa el evento de progreso en absoluto

Realmente no puedo entender por qué sucede esto. No pude encontrar ninguna otra discusión sobre este tipo de problemas. Gracias de antemano por tu ayuda.

Versión React-Native: 0.64.3

Prueba de descarga de ejemplo de Slack

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda