--- title: "Configurar la función Advanced I/O" url: https://docs.catalyst.zoho.com/es/tutorials/catly/nodejs/configure-advancedio/ description: "Crea un servicio acortador de URLs, Cat.ly, como una aplicación React de página única construida con el plugin React de Catalyst y varios componentes." last_updated: 2026-11-04T10:10:44Z service: All Services type: tutorial related_links: - name: "Advanced I/O Functions" url: /es/serverless/help/functions/advanced-io/ - name: "Functions Directory Structure" url: /es/cli/v1/project-directory-structure/functions-directory --- # Configurar la función Advanced I/O La función Advanced I/O contiene la lógica que acortará la URL que el usuario proporcione y maneja el enrutamiento en la aplicación. Puedes aprender más sobre este tipo de función en [esta página de ayuda](https://docs.catalyst.zoho.com/es/serverless/help/functions/advanced-io). Ya hemos proporcionado el código completo de esta aplicación alojado en nuestro repositorio de GitHub en la sección de Introducción del tutorial. En caso de que lo hayas pasado por alto, ahora puedes descargar el código desde [este enlace](https://github.com/catalystbyzoho/tutorial-cat.ly-node). Agregaremos archivos de este repositorio descargado a nuestro directorio del proyecto. Primero analicemos el componente de función en detalle. > **Nota**: Por favor, revisa el código en los archivos proporcionados mientras lees los puntos a continuación. * El archivo `urlshorten.js` en `/catly/routers` realiza las principales operaciones de enrutamiento y acortamiento. Hay dos paquetes npm incluidos en este archivo para realizar las tareas requeridas: - `valid-url`: [El módulo valid URL](https://www.npmjs.com/package/valid-url) se usa para verificar la validez de la URL original ingresada por el usuario. Si se encuentra que la URL es inválida, no se acortará. - `shortid`: [El módulo shortid](https://www.npmjs.com/package/shortid) se usa para generar un ID único corto compatible con navegadores para la URL original ingresada por el usuario. Hay tres rutas definidas en este archivo para que el componente cliente utilice: - `/item/all`: Para obtener todos los datos del Data Store. - `/:code`: Para redirigir a la URL original de una URL acortada en particular - `/item`: Para insertar la URL original y generar su ID corto Accedemos al cache cuando usamos `/:code` y `/item` para recuperar datos, para un procesamiento más rápido. Sin embargo, una nueva URL ingresada por el usuario se persiste primero en el Data Store. * El archivo `helper.js` en `/catly/utils` define los procedimientos para acceder al Data Store y al cache, para obtener datos de ellos o para persistir datos en ellos. Ejecuta [consultas ZCQL](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/introduction) para obtener datos de la tabla en el Data Store. * El archivo `constants.js` en `/catly/utils` se usa para almacenar los valores constantes utilizados por los otros archivos, como el ID del segmento de cache y el nombre de la tabla que almacena las URLs originales y sus IDs cortos. También define la página de error a cargar cuando se encuentra que la URL es inválida desde el directorio del cliente. * El `index.js` es el archivo principal del servidor que define los parámetros de solicitud y respuesta, e importa el [framework express de Node.js](https://expressjs.com/) y el [middleware body-parser de npm](https://www.npmjs.com/package/body-parser). * Además de estos archivos, el directorio de funciones contiene [`package.json`](https://docs.npmjs.com/files/package.json) y [`package-lock.json`](https://docs.npmjs.com/configuring-npm/package-lock-json.html) en la carpeta `catly`. El archivo `catalyst-config.json` en la raíz de la función contiene la configuración de la función. Puedes aprender más sobre estos archivos en la [página de ayuda de la estructura de directorios del proyecto](https://docs.catalyst.zoho.com/es/cli/v1/project-directory-structure/introduction). Ahora reemplazaremos la carpeta functions en la raíz del directorio del proyecto con la carpeta functions del repositorio descargado. El directorio de tu proyecto ahora debería contener la siguiente estructura: ![functions-dir](https://catalyst-docs-development.zohostratus.in/images/tutorials/react/functions-dir.webp) Sigue los pasos a continuación para completar el proceso de configuración de la función: El repositorio que descargaste no contiene los módulos de node requeridos para la aplicación. Por lo tanto, debes instalar NPM en la carpeta `catly`. 1. Navega a `functions/catly` desde tu CLI y ejecuta el siguiente comando: ```sh npm install express body-parser valid-url shortid ``` Esto instalará los módulos de node requeridos para la aplicación y actualizará los archivos de dependencias. 2. Ahora, abre el archivo `package.json` usando cualquier IDE y reemplaza el valor de author (que es emma@zylker.com) con tu dirección de correo electrónico. > **Nota**: Este es un paso opcional, ya que la información del autor no afectará la ejecución de la aplicación Cat.ly. 3. Abre `utils/constants.js` y reemplaza el valor de `short_url_segment` con el **Segment ID** del segmento de cache que creaste en el proyecto *Catly*. ![react_app_short_url_segment_json](https://catalyst-docs-development.zohostratus.in/images/tutorials/react/react_app_short_url_segment_json.webp) Puedes encontrar el Segment ID de tu segmento de cache desde la página Segments navegando al componente Cache en tu consola de Catalyst. ![segment-id](https://catalyst-docs-development.zohostratus.in/images/tutorials/react/segment-id.webp) Esto es esencial, ya que la URL original y el ID corto recibidos de la aplicación Cat.ly deben almacenarse en, u obtenerse de, un segmento de cache válido. El directorio de funciones está ahora correctamente configurado.