Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

156
Views
Transmisión y análisis de un archivo CSV en el navegador (nodo/paquete web)

Hace un tiempo, armé un proyecto de nodo que fue diseñado para ejecutarse en el navegador, y una de las cosas principales que hace es analizar los archivos CSV que transmite desde un servidor y operar en ellos en fragmentos. Cuando inicialmente armé esto, IE11 era una preocupación, y a través de una cantidad poco saludable de cafeína y probablemente algunos sacrificios a varios dioses mayores, logré que algo funcionara en su mayoría (obviamente no con la transmisión real, pero lo suficientemente cerca). Ahora, estoy en el proceso de actualizar las dependencias y volver a trabajar, ya que IE11 ya no es una preocupación. Sin embargo, entre Webpack> 5 y algunos otros paquetes que tienen cambios importantes, estoy luchando para que el análisis de CSV se comporte. La versión corta de lo que solía hacer era:

 import { ReadableWebToNodeStream } from "readable-web-to-node-stream"; var csv = require("csv-parse/lib/es5") [...] var response = fetch(csv_url); new ReadableWebToNodeStream(response.body).pipe(csv()) .on('data', async (row) => { // Deals with the data here }).on('end', async () => { // Finishes up });

Lo cual funcionó. El problema es que con los cambios en el paquete web (supongo), esa biblioteca ReadableWebToNodeStream ya no funciona de la manera que esperaba, y prefiero hacerlo de la manera correcta ahora que IE11 ya no me obliga a hacer cosas horribles. Todavía tengo que hacer algunas transformaciones en los datos entrantes, así que prefiero mantener la entrada como una secuencia para no consumir una gran cantidad de memoria (estos archivos CSV tienen el potencial de ser enormes), pero Estoy luchando por encontrar una manera de interactuar con Web ReadableStreams usando csv-parse.

Así que supongo que el consejo que me gustaría es:

  1. ¿Hay alguna manera de analizar un ReadableStream que no sea de nodo usando csv-parse?
  2. ¿Hay alguna manera de configurar el paquete web para que una transmisión se comporte como una transmisión de estilo de nodo, a pesar de ejecutarse en el navegador?
about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Por lo tanto, este problema se debió a la actualización del paquete web 5+ que provocó que los módulos del núcleo del nodo ya no estuvieran polillenados. Supuse erróneamente que el polyfilling fetch + streams sería suficiente, pero necesitaba polyfills adicionales (en mi caso, el proceso era el culpable). Esta pregunta tiene más información sobre lo que cambió en la actualización y lo que se debe policompletar. Con todo polillenado, pude canalizar los CSV que estaba obteniendo a través de csv-parse como antes.

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!