Patrón para recuperar datos binarios usando el nodo Code - Flujo de trabajo de n8n

Aprende a recuperar datos binarios que nodos intermedios descartan en tu flujo de trabajo de n8n. Esta plantilla de n8n utiliza un potente patrón de código de nodo personalizado para la persistencia de archivos.

Vista previa del flujo

¿Listo para automatizar?

Descarga esta plantilla de flujo de trabajo de n8n y comienza a usarla al instante.

¿Para quién es ideal?

Usuarios avanzados de n8n que trabajan con archivos binarios (imágenes, PDFs) a través de múltiples pasos.
Desarrolladores que crean plantillas complejas de n8n donde la integridad de los archivos es fundamental.
Usuarios que buscan dominar el nodo Code de n8n para la manipulación interna de datos.
Cualquiera que necesite una persistencia de datos fiable dentro de un flujo de trabajo de n8n de larga duración.

Descripción general

Muchos nodos estándar de n8n, como el nodo Set de n8n que se demuestra aquí, a menudo no pasan automáticamente los datos binarios a los pasos subsiguientes. Esta 'pérdida de datos' es un escollo habitual al construir canalizaciones de procesamiento de archivos. Este flujo de n8n proporciona una solución técnica robusta definiendo un patrón de recuperación personalizado. Al utilizar el nodo Code de n8n y la función de ayuda interna $(), el flujo de n8n puede consultar hacia atrás cualquier nodo de n8n anterior especificado (incluso varios pasos atrás) y recuperar la carga útil binaria original. Esta técnica garantiza la integridad de los datos y es un patrón crucial para cualquiera que trabaje con plantillas sofisticadas de n8n que impliquen transformaciones complejas de archivos.

Cómo funciona

Este flujo de n8n comienza con el disparador (trigger) Start de n8n, que inicia el proceso. Primero, el nodo HTTP Request de n8n llamado 'Get n8n Logo (Binary)' descarga un archivo de imagen, creando datos binarios en el contexto del ítem actual. A continuación, se ejecuta el nodo Set de n8n llamado 'Remove Binary Data'. Debido a que el nodo Set de n8n no conserva los datos binarios por defecto, el adjunto del archivo se pierde, simulando un punto de interrupción común en un flujo complejo de n8n.

El núcleo de este flujo de n8n es el nodo Code llamado 'Re-Access Binary Data from Previous Node'. Este nodo personalizado de n8n ejecuta JavaScript que omite la salida del nodo anterior y accede directamente a la salida del ítem del nodo 'Get n8n Logo (Binary)' de n8n usando el accesor $(nodeName).item. El script itera entonces a través de los datos del archivo binario recuperado, utiliza Buffer.from() para decodificarlo, y emplea la función de ayuda esencial de n8n, this.helpers.prepareBinaryData(), para volver a adjuntar correctamente el objeto binario recuperado al contexto de ejecución del ítem actual, restaurando así la ruta de los datos para los nodos subsiguientes en el flujo.

Guía de instalación


  1. Importar: Copia el código JSON del flujo de n8n proporcionado y pégalo en tu instancia de n8n usando la opción 'Nuevo' -> 'Importar desde JSON'.

  2. Credenciales: Este flujo específico de n8n no requiere credenciales, ya que utiliza nodos centrales de n8n y una URL pública como demostración.

  3. Personalización: Si adaptas esta plantilla de n8n para tus propios archivos, asegúrate de actualizar la variable previousNodeName dentro del nodo Code 'Re-Access Binary Data from Previous Node' para que coincida con el nombre del nodo de n8n que generó originalmente los datos binarios que deseas recuperar.

  4. Ejecución: Haz clic en el botón 'Ejecutar flujo' (Run Workflow) para probar el flujo de n8n y observar cómo se restauran los datos binarios tras ser descartados intencionadamente por el nodo intermedio Set.

Detalles del nodo

Start (n8n trigger): Un disparador manual que se utiliza para iniciar fácilmente este flujo específico de n8n con fines de prueba y demostración.
Get n8n Logo (Binary) (HTTP Request): Descarga la imagen del logotipo de n8n desde una URL especificada, creando los datos binarios que se recuperarán más adelante en el flujo de n8n.
Remove Binary Data (Set): Este nodo de n8n está configurado para añadir un campo de texto simple ('test value') pero descarta intencionadamente los datos binarios, simulando un escenario donde los archivos binarios no se pasan automáticamente a través de los nodos intermedios de n8n.
Re-Access Binary Data from Previous Node (Code): El nodo personalizado central de n8n. Contiene un script de JavaScript que apunta específicamente a la salida del nodo 'Get n8n Logo (Binary)' para recuperar el objeto binario en bruto, decodifica los datos Base64 y utiliza this.helpers.prepareBinaryData para reintegrar el archivo en el flujo de ejecución del ítem actual. La variable codificada previousNodeName determina de qué nodo anterior de n8n se accede a la salida.

Flujos de trabajo de n8n relacionados

Gratis

Nodos: 5 Nodos
Actualizado: Diciembre 26 2025
Ver todo
Creado por

Innovative builder with a passion for crafting automation solutions that solve real-world challenges. From streamlining workflows to driving efficiency, my work empowers teams and individuals to achieve more with less effort. Experienced in developing scalable tools and strategies that deliver results with n8n, supabase and cline. Get your Free n8n PDF Audit:

Presentado*