Iniciadores Rápidos

¿Cómo construir un backend para Deno?

34min

Introducción

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.

Requisitos previos

  • 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.

Paso 1 – Crear un nuevo proyecto en Back4App y conectar

Crear un nuevo proyecto

La base para tu backend de Deno es un proyecto de Back4App. Si aún no has creado uno:

  1. Inicia sesión en tu cuenta de Back4App.
  2. Haz clic en el botón “Nueva App” en tu panel de control de Back4App.
  3. Dale un nombre a tu app (por ejemplo, “Deno-Backend-Tutorial”).
Document image


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.

Conéctate a Back4App a través de REST

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.

Document image


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.

Paso 2 – Configuración de la Base de Datos

En este paso, crearás un modelo de datos en Back4App e interactuarás con él utilizando APIs REST desde Deno.

Creando un Modelo de Datos

  1. Ve a la sección “Base de Datos” en tu panel de control de Back4App.
  2. Haz clic en “Crear una Nueva Clase” y nómbrala, por ejemplo, “Todo.”
  3. Agrega columnas relevantes (por ejemplo, título (String), estáCompletado (Boolean)).
Crear Nueva Clase
Crear Nueva Clase


También puedes permitir que Parse cree estas columnas automáticamente cuando se guarda la información.

Creando un modelo de datos con el agente de IA

El agente de IA de Back4App puede diseñar tu esquema por ti:

  1. Abre el agente de IA en tu panel de Back4App.
  2. Describe tu modelo de datos (por ejemplo, “Crea una clase Todo con un título, descripción y campo isCompleted.”).
  3. Permite que el agente genere el esquema automáticamente.
Document image


Esto te ayuda a gestionar esquemas más complejos rápidamente.

Leer y escribir datos usando REST API

Desde Deno, puedes ejecutar el servidor llamando a los endpoints REST con fetch. Por ejemplo, para crear un Todo:

Text


To fetch Todos:

Text


You can run these with:

Bash


Reading and Writing Data Using GraphQL API

Back4App also provides a GraphQL endpoint: https://parseapi.back4app.com/graphql

Text


Trabajando con Consultas en Vivo (Opcional)

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.

Paso 3 – Aplicando Seguridad con ACLs y CLPs

Descripción General

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.

Configurando Permisos a Nivel de Clase

  1. Abre la base de datos en tu panel de control de Back4App.
  2. Selecciona una clase (por ejemplo, “Todo”).
  3. Ve a los permisos a nivel de clase.
  4. Habilita o deshabilita el acceso de lectura/escritura para el público o para usuarios autenticados según sea necesario.
Document image


Configurando ACLs

Al crear o actualizar un objeto a través de REST, puedes incluir un atributo ACL en el cuerpo de la solicitud. Por ejemplo:

Text


Este ejemplo solo permite que el rol de “Admins” lea o escriba. El acceso público está desactivado.

Paso 4 – Escribiendo Funciones de Cloud Code

Por qué Cloud Code

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.

Ejemplo de Función de Cloud Code

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:

Text


Despliegue

Puedes desplegar código a través de la Back4App CLI o el panel de Cloud Code en tu panel de control de Back4App.

NPM en Cloud Code

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.

Paso 5 – Configurando la Autenticación

Habilitar Autenticación

Back4App utiliza la clase Parse User para la autenticación. Mientras trabajas con Deno, puedes llamar a los endpoints REST para gestionar usuarios.

Registrarse e Iniciar Sesión usando REST

Text


Inicio de sesión social

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.

Paso 6 – Manejo del almacenamiento de archivos

Subir y recuperar archivos

Para subir archivos desde Deno, usa una solicitud POST a https://parseapi.back4app.com/files/<FILENAME>. Por ejemplo:

Text


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.

Paso 7 – Verificación de Correo Electrónico y Restablecimiento de Contraseña

Descripción General

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.

Configuración del Panel de Control

  1. Habilitar Verificación de Correo Electrónico en tu panel de Back4App bajo Configuración de Correo.
  2. Personalizar tus plantillas de verificación.
  3. 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.

Paso 8 – Programación de Tareas con Trabajos en la Nube

Descripción General de Trabajos en la Nube

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.

Text


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.

Paso 9 – Integración de Webhooks

Definición

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.

Configuración

  1. Abre “Más” > “WebHooks” en el panel de Back4App.
  2. Haz clic en “Agregar Webhook” y proporciona el endpoint de tu servicio de terceros.
  3. Establece qué desencadenadores o clases deseas enviar solicitudes.
Agregando un Webhook
Agregando un Webhook


Esto permite que sistemas externos reciban datos cada vez que creas o modificas objetos en Back4App.

Paso 10 – Explorando el Panel de Administración de Back4App

Introducción al Panel de Administración

Los equipos no técnicos pueden usar este panel para gestionar datos visualmente. Simplifica las operaciones CRUD y las revisiones de datos.

Cómo habilitar

  1. Ve a Panel de la Aplicación > Más > Aplicación de Administración y elige “Habilitar Aplicación de Administración.”
  2. Crea un Usuario Administrador para iniciar sesión.
  3. Establece un subdominio para tu Aplicación de Administración.
Habilitar Aplicación de Administración
Habilitar Aplicación de Administración


Luego puedes iniciar sesión en la Aplicación de Administración para gestionar registros de forma segura.

Conclusión

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.