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

279
Vistas
Solución alternativa para descargar archivos de más de 50 MB mediante Google Script

en un Google Script tengo que descargar archivos de más de 50 MB. El servidor que sirve archivos admite el comando de rango, por lo que puedo descargar fragmentos de archivos pero tengo problemas durante el proceso de fusión.

Siguiendo un ejemplo del código que traté de usar y el problema que enfrenté (RangeError: longitud de matriz no válida)

 let pieceSize = 52428800; let steps = Math.ceil(fileSize / pieceSize); let blobs = []; let datas = null; for (let i = 0; i < steps; i++){ let b = "bytes=" +(i*pieceSize)+ "-"+Math.min((i+1)*pieceSize-1, fileSize); let params = {method: "get", headers: { Range: b, }, }; Logger.log("Gettinng piece "+i+" : "+b); blobs.push(UrlFetchApp.fetch(url, params).getBlob()); if (datas == null){ datas = blobs[i].getBytes(); } else { datas = datas.concat(blobs[i].getBytes()); // RangeError: Invalid array length } } let blob = Utilities.newBlob(datas); let file = DriveApp.createFile(blob)

Busqué otras soluciones para fusionar los datos descargados (¿quizás como archivos o como blobs?), pero no puedo encontrar funciones para alcanzar mi objetivo sin moverme a Byte[].

Gracias

about 4 years ago · Santiago Trujillo
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