¿Cómo construir un backend para Deno?
En este tutorial, aprenderás cómo construir un backend para Deno utilizando Back4App.
Recorreremos cada paso para integrar las características clave de Back4App: base de datos, APIs REST, autenticación de usuarios, almacenamiento de archivos y consultas en tiempo real, en un entorno Deno.
Verás cómo comunicarte con Back4App a través de puntos finales REST y crear una infraestructura completa sin gestionar servidores por tu cuenta.
Cuando uses Back4App, puedes omitir la configuración manual de servidores con Deno, ahorrando tiempo y esfuerzo.
Te centrarás en escribir código más simple, gracias a la biblioteca estándar de Deno y su enfoque moderno.
Al final de esta guía sobre cómo construir un backend para Deno, tendrás un camino claro para integrar seguridad avanzada, código en la nube y tareas programadas en tu aplicación Deno.
Una vez que completes este tutorial, podrás ejecutar el servidor, manejar APIs REST, integrar la autenticación de usuarios, almacenar archivos y programar tareas fácilmente.
También entenderás cómo gestionar tus datos con el enfoque fetch de Deno utilizando la API REST de Back4App.
- Una cuenta de Back4app y un nuevo proyecto de Back4app Comenzando con Back4app. Si no tienes una cuenta, puedes crear una gratis. Usa el enlace de arriba para preparar tu proyecto.
- Instalar Deno Puedes obtener Deno en https://deno.land. Instala Deno en tu sistema operativo y confírmalo con deno --version.
- Familiaridad con los conceptos básicos de Deno Como módulos, sistemas de archivos, deno run --allow-net, o cómo importar módulos de aplicación de la biblioteca estándar.
- Conocimientos básicos de APIs REST Usaremos llamadas fetch y el tipo de contenido de los encabezados para el manejo de datos, así que asegúrate de conocer los fundamentos de REST y JSON.
Asegúrate de tener estos requisitos previos antes de comenzar. Tener tu proyecto de Back4App configurado y tu entorno local de Deno en funcionamiento te permitirá seguir este tutorial sin problemas.
La base para tu backend de Deno es un proyecto de Back4App. Si aún no has creado uno:
- Inicia sesión en tu cuenta de Back4App.
- Haz clic en el botón “Nueva App” en tu panel de control de Back4App.
- Dale un nombre a tu app (por ejemplo, “Deno-Backend-Tutorial”).
Una vez que tu proyecto esté listo, aparecerá en tu panel de control de Back4App. Este proyecto es donde configurarás bases de datos, seguridad y APIs.
Dado que no tenemos un SDK de Parse para Deno, utilizaremos los puntos finales de la API REST de Back4App. Puedes encontrar el ID de la Aplicación, Clave de API REST, y URL del Servidor en la Configuración de la App o en la sección de Seguridad y Claves.
A lo largo de este tutorial, utilizaremos fetch para enviar solicitudes desde Deno a Back4App. Asegúrate de incluir tu clave API y el tipo de contenido de los encabezados en cada llamada.
En este paso, crearás un modelo de datos en Back4App e interactuarás con él utilizando APIs REST desde Deno.
- Ve a la sección “Base de Datos” en tu panel de control de Back4App.
- Haz clic en “Crear una Nueva Clase” y nómbrala, por ejemplo, “Todo.”
- Agrega columnas relevantes (por ejemplo, título (String), estáCompletado (Boolean)).
También puedes permitir que Parse cree estas columnas automáticamente cuando se guarda la información.
El agente de IA de Back4App puede diseñar tu esquema por ti:
- Abre el agente de IA en tu panel de Back4App.
- Describe tu modelo de datos (por ejemplo, “Crea una clase Todo con un título, descripción y campo isCompleted.”).
- Permite que el agente genere el esquema automáticamente.
Esto te ayuda a gestionar esquemas más complejos rápidamente.
Desde Deno, puedes ejecutar el servidor llamando a los endpoints REST con fetch. Por ejemplo, para crear un Todo:
To fetch Todos:
You can run these with:
Back4App also provides a GraphQL endpoint: https://parseapi.back4app.com/graphql
Las Consultas en Vivo te actualizan en tiempo real, pero Deno no tiene una biblioteca nativa de Parse LiveQuery. Aún puedes configurar la función de Consulta en Vivo en tu panel de Back4App para otros clientes o usar un WebSocket en Deno para suscribirte manualmente. Para más detalles, consulta la documentación de Consultas en Vivo.
Las ACLs (Listas de Control de Acceso) y CLPs (Permisos a Nivel de Clase) de Back4App protegen tus datos. Usa CLPs para establecer reglas predeterminadas para toda una clase. Luego usa ACLs para restricciones a nivel de objeto.
- Abre la base de datos en tu panel de control de Back4App.
- Selecciona una clase (por ejemplo, “Todo”).
- Ve a los permisos a nivel de clase.
- Habilita o deshabilita el acceso de lectura/escritura para el público o para usuarios autenticados según sea necesario.
Al crear o actualizar un objeto a través de REST, puedes incluir un atributo ACL en el cuerpo de la solicitud. Por ejemplo:
Este ejemplo solo permite que el rol de “Admins” lea o escriba. El acceso público está desactivado.
Cloud Code es donde almacenas lógica segura del lado del servidor. No gestionas servidores tú mismo. Puedes agregar validaciones o disparadores para clases específicas.
Puedes definir una Función de Cloud (en JavaScript) y desplegarla en tu aplicación. Por ejemplo, una función para verificar la longitud del texto podría ser:
Puedes desplegar código a través de la Back4App CLI o el panel de Cloud Code en tu panel de control de Back4App.
Puedes importar bibliotecas externas con require(). Una vez desplegadas, el entorno del servidor las ejecutará. Esto es útil para tareas avanzadas, pero recuerda que ejecutarlas desde Deno es separado de tu entorno de Cloud Code en Back4App.
Back4App utiliza la clase Parse User para la autenticación. Mientras trabajas con Deno, puedes llamar a los endpoints REST para gestionar usuarios.
Puedes configurar Google, Facebook, Apple y otros proveedores en Back4App. Luego, llamarás a los endpoints dedicados con tokens de OAuth. Consulta la documentación de inicio de sesión social de Back4App para más detalles.
Para subir archivos desde Deno, usa una solicitud POST a https://parseapi.back4app.com/files/<FILENAME>. Por ejemplo:
Luego puedes almacenar la URL del archivo resultante en tus objetos de clase. Este método es perfecto para almacenar imágenes o documentos mientras ejecutas el servidor en Deno.
Verificar correos electrónicos asegura un acceso legítimo. El restablecimiento de contraseña ayuda a los usuarios a recuperar el acceso de manera segura.
- Habilitar Verificación de Correo Electrónico en tu panel de Back4App bajo Configuración de Correo.
- Personalizar tus plantillas de verificación.
- Habilitar Restablecimiento de Contraseña y establecer tu diseño de correo preferido.
Cuando un usuario se registra, recibe un enlace de verificación si activaste la verificación por correo electrónico. Para restablecer la contraseña, llama al punto final REST POST /requestPasswordReset.
Los trabajos en la nube se ejecutan periódicamente sin intervención humana. Por ejemplo, puedes eliminar registros antiguos diariamente o enviar recordatorios por correo electrónico de rutina.
Después de implementar este trabajo, puedes programarlo en Configuración de la App > Configuración del Servidor > Trabajos en Segundo Plano en tu panel de Back4App.
Un Webhook es un callback HTTP que se activa cuando ocurren eventos, como la creación o actualización de objetos. Puedes integrarte con Slack, Stripe o cualquier servicio externo.
- Abre “Más” > “WebHooks” en el panel de Back4App.
- Haz clic en “Agregar Webhook” y proporciona el endpoint de tu servicio de terceros.
- Establece qué desencadenadores o clases deseas enviar solicitudes.
Esto permite que sistemas externos reciban datos cada vez que creas o modificas objetos en Back4App.
Los equipos no técnicos pueden usar este panel para gestionar datos visualmente. Simplifica las operaciones CRUD y las revisiones de datos.
- Ve a Panel de la Aplicación > Más > Aplicación de Administración y elige “Habilitar Aplicación de Administración.”
- Crea un Usuario Administrador para iniciar sesión.
- Establece un subdominio para tu Aplicación de Administración.
Luego puedes iniciar sesión en la Aplicación de Administración para gestionar registros de forma segura.
En este tutorial, descubriste cómo construir un backend para Deno en Back4App. Creaste modelos de datos, manejaste la autenticación de usuarios, aprendiste sobre ACLs y CLPs para seguridad, y programaste trabajos en la nube.
También viste cómo integrar APIs externas a través de webhooks y cómo ejecutar el servidor o APIs REST con comandos deno run --allow-net.
Esta configuración te permite comenzar rápidamente sin configurar manualmente sistemas de archivos o complejidades de la biblioteca estándar para la arquitectura del servidor.
Próximos Pasos:
- Expande tu aplicación Deno con puntos finales adicionales y lógica avanzada utilizando Cloud Code.
- Integra más servicios (por ejemplo, pasarelas de pago, análisis) con tus datos de Back4App.
- Consulta la documentación oficial de Back4App para obtener consejos más profundos sobre seguridad, rendimiento y análisis de registros.
- Experimenta con características avanzadas en tiempo real o almacenamiento deno kv, conectando datos entre tu entorno de ejecución Deno y el robusto entorno de Back4App.
Con tu nuevo conocimiento, puedes implementar con confianza un backend Deno seguro, escalable y lleno de características respaldado por Back4App.