--- title: "Configurar la función Basic I/O" url: https://docs.catalyst.zoho.com/es/tutorials/hosted-login-app/nodejs/configure-function/ description: "Crea una aplicación sencilla Basic o React utilizando las funcionalidades de Catalyst Hosted Authentication que proporciona registro de usuarios, inicio de sesión, restablecimiento de contraseña e implementa el inicio de sesión mediante proveedores de identidad federados populares." last_updated: 2026-03-20T16:21:56Z service: All Services type: tutorial related_links: - name: "Basic I/O Functions" url: /es/serverless/help/functions/basic-io/ - name: "Functions Directory Structure" url: /es/cli/v1/project-directory-structure/functions-directory --- # Configurar la función Ahora comenzaremos a codificar la aplicación del portal de autorización configurando el componente de la función. El [directorio de la función](https://docs.catalyst.zoho.com/es/cli/v1/project-directory-structure/functions-directory) (`functions/authorization_portal_function`) contiene: * El archivo principal de la función `index.js` * El archivo de configuración `catalyst-config.json` * Módulos de Node * Archivos de dependencias [`package.json`](https://docs.npmjs.com/files/package.json) y [`package-lock.json`](https://docs.npmjs.com/configuring-npm/package-lock-json.html) Agregarás código en el archivo `index.js`. La función Basic I/O contiene las siguientes funcionalidades: * Los detalles del usuario final se proporcionarán como entrada JSON a la función de *Custom User Validation*. * La función está codificada para implementar una lógica personalizada en base a la cual el usuario final será autenticado o denegado. > **Nota:** Para los fines de este tutorial, hemos codificado una lógica para la función de Custom User Validation donde si el proveedor de correo electrónico del usuario es diferente a Zylker Technology (`@zylker.com`), el usuario final no podrá registrarse en la aplicación. Puedes usar la misma o codificar una lógica de tu preferencia. Ahora, comencemos a codificar la función Basic I/O. Copia el código proporcionado a continuación y pégalo en el archivo `index.js` en el directorio `functions/authorization_portal_function` de tu proyecto, y guarda el archivo. Puedes usar cualquier IDE de tu preferencia para trabajar con los archivos de la aplicación. > **Nota:** Revisa el código en esta sección para asegurarte de que lo comprendes completamente. **index.js** ```javascript const catalyst = require("zcatalyst-sdk-node"); module.exports = (context, basicIO) => { const catalystApp = catalyst.initialize(context); const requestDetails = catalystApp .userManagement() .getSignupValidationRequest(basicIO); if (requestDetails) { if (requestDetails.user_details.email_id.includes("@zylker.com")) { // Las acciones que ocurren en caso de una autenticación exitosa pueden personalizarse basicIO.write( JSON.stringify({ status: "success", user_details: { first_name: requestDetails.user_details.first_name, last_name: requestDetails.user_details.last_name, email_id: requestDetails.user_details.email_id, role_identifier: "App User", // Si deseas sobrescribir el rol predeterminado, puedes especificar el id/nombre del rol aquí. org_id: "", // Si proporcionas el Org ID, asegúrate de copiarlo exactamente desde la consola. }, }) ); } else { // El usuario no ha pasado la autenticación basicIO.write( JSON.stringify({ status: "failure", }) ); } } context.close(); }; ``` > **Nota:** También puedes usar este [SDK](https://docs.catalyst.zoho.com/es/sdk/nodejs/v2/cloud-scale/authentication/custom-user-validation/) para codificar tu propia lógica personalizada en lugar de la implementada anteriormente. El directorio de la función ahora está configurado. Podemos proceder a configurar el directorio del cliente.