Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

178
Visualizações
Descomprimir cadena en JS

Estoy bajando objetos de s3. los objetos están comprimidos y necesito poder descomprimirlos y comparar el contenido con algunas cadenas. Mi problema es que parece que no puedo descomprimirlos correctamente. Esto es lo que veo que sucede: s3 ziped -> over the wire -> to me as JS Buffer -> ???

No estoy seguro de lo que puedo hacer a continuación. Aparentemente probé todo, como pako y lzutf8 para descomprimir las cuerdas, pero no dado.

aquí hay un intento con lzutf8:

 lzutf8.decompress(buffer,{outputEncoding: "String"}, (result, error) => { if (err) console.log(err); if (data) console.log(data); });

Aquí hay un intento con pako:

 pako.ungzip(buffer,{to: "string"}, (result, error) => { if (error) console.log(err); if (result) console.log(data); })

pako lanza una "comprobación de encabezado incorrecta" y lzutf8 no hace nada en silencio.

No estoy casado con estas bibliotecas, así que si hay algo más que funcione, estoy feliz de probar cualquier cosa. ¿Supongo que mi problema podría tener algo que ver con los tipos de codificación? Aunque no estoy seguro.

Así es como se ve la parte relevante de mi código:

 let pako = require('pako'); let streamBuffers = require('stream-buffers'); let ws = fs.createWriteStream(process.cwd() + 'path-to-file'); let rs = new streamBuffers.ReadableStreamBuffer(); objects.forEach((obj) => { console.log(obj); rs.on("data", (data) => { ws.write(pako.ungzip); }) rs.push(obj); })
about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Puede crear un flujo legible a partir de un objeto en S3 con el método createReadStream de AWS SDK y luego canalizarlo a través de un flujo de transformación zlib.Gunzip :

 var zlib = require('zlib'); var s3 = new AWS.S3({apiVersion: '2006-03-01'}); var params = {Bucket: <bucket>, Key: <key>}; var file = require('fs').createWriteStream(<path/to/file>); s3.getObject(params).createReadStream().pipe(zlib.createGunzip()).pipe(file);
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda