Quickstarters

Comment construire un backend pour Deno ?

35min

Introduction

Dans ce tutoriel, vous apprendrez à construire un backend pour Deno en utilisant Back4App.

Nous passerons en revue chaque étape pour intégrer les fonctionnalités clés de Back4App : base de données, API REST, authentification des utilisateurs, stockage de fichiers et requêtes en temps réel, dans un environnement Deno.

Vous verrez comment communiquer avec Back4App via des points de terminaison REST et créer une infrastructure complète sans gérer les serveurs vous-même.

Lorsque vous utilisez Back4App, vous pouvez éviter de configurer manuellement des serveurs avec Deno, ce qui vous fait gagner du temps et des efforts.

Vous vous concentrerez sur l'écriture d'un code plus simple, grâce à la bibliothèque standard de Deno et à son approche moderne.

À la fin de ce guide sur la construction d'un backend pour Deno, vous aurez un chemin clair pour intégrer une sécurité avancée, du code cloud et des tâches planifiées dans votre application Deno.

Une fois que vous aurez terminé ce tutoriel, vous serez en mesure de faire fonctionner le serveur, de gérer les API REST, d'intégrer l'authentification des utilisateurs, de stocker des fichiers et de planifier des tâches facilement.

Vous comprendrez également comment gérer vos données avec l'approche fetch de Deno en utilisant l'API REST de Back4App.

Prérequis

  • Un compte Back4app et un nouveau projet Back4app Commencer avec Back4app. Si vous n'avez pas de compte, vous pouvez en créer un gratuitement. Utilisez le lien ci-dessus pour préparer votre projet.
  • Installer Deno Vous pouvez obtenir Deno à https://deno.land. Installez Deno sur votre système d'exploitation et confirmez-le avec deno --version.
  • Familiarité avec les concepts de base de Deno Comme les modules, les systèmes de fichiers, deno run --allow-net, ou comment importer des modules d'application de la bibliothèque standard.
  • Connaissances de base des API REST Nous utiliserons des appels fetch et le type de contenu des en-têtes pour la gestion des données, donc assurez-vous de connaître les fondamentaux de REST et JSON.

Assurez-vous d'avoir ces prérequis avant de commencer. Avoir votre projet Back4App configuré et votre environnement Deno local en cours d'exécution vous permettra de suivre ce tutoriel sans problème.

Étape 1 – Créer un nouveau projet sur Back4App et se connecter

Créer un nouveau projet

La base de votre backend Deno est un projet Back4App. Si vous ne l'avez pas encore créé :

  1. Connectez-vous à votre compte Back4App.
  2. Cliquez sur le bouton “Nouvelle application” dans votre tableau de bord Back4App.
  3. Donnez un nom à votre application (par exemple, “Deno-Backend-Tutorial”).
Document image


Une fois votre projet prêt, il apparaîtra dans votre tableau de bord Back4App. Ce projet est l'endroit où vous configurerez les bases de données, la sécurité et les API.

Connectez-vous à Back4App via REST

Puisque nous n'avons pas de SDK Parse pour Deno, nous utiliserons les points de terminaison de l'API REST de Back4App. Vous pouvez trouver l’ID d'application, l’Clé API REST, et l’URL du serveur dans les Paramètres de l'application ou la section Sécurité et clés de votre application.

Document image


Tout au long de ce tutoriel, nous utiliserons fetch pour envoyer des requêtes de Deno à Back4App. Assurez-vous d'inclure votre clé API et le type de contenu des en-têtes dans chaque appel.

Étape 2 – Configuration de la base de données

Dans cette étape, vous allez créer un modèle de données sur Back4App et interagir avec lui en utilisant des API REST depuis Deno.

Création d'un modèle de données

  1. Allez dans la section “Base de données” de votre tableau de bord Back4App.
  2. Cliquez sur “Créer une nouvelle classe” et nommez-la, par exemple, “Todo.”
  3. Ajoutez des colonnes pertinentes (par exemple, titre (String), estComplété (Boolean)).
Créer une nouvelle classe
Créer une nouvelle classe


Vous pouvez également permettre à Parse de créer ces colonnes automatiquement lorsque les données sont enregistrées.

Créer un modèle de données avec l'agent IA

L'agent IA de Back4App peut concevoir votre schéma pour vous :

  1. Ouvrez l'agent IA dans votre tableau de bord Back4App.
  2. Décrivez votre modèle de données (par exemple, “Créer une classe Todo avec un titre, une description et un champ isCompleted.”).
  3. Permettez à l'agent de générer le schéma automatiquement.
Document image


Cela vous aide à gérer des schémas plus complexes rapidement.

Lire et écrire des données en utilisant l'API REST

Depuis Deno, vous pouvez exécuter le serveur en appelant des points de terminaison REST avec fetch. Par exemple, pour créer 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


Travailler avec des requêtes en direct (optionnel)

Les requêtes en direct vous mettent à jour en temps réel, mais Deno n'a pas de bibliothèque Parse LiveQuery native. Vous pouvez toujours configurer la fonctionnalité de requête en direct dans votre tableau de bord Back4App pour d'autres clients ou utiliser un WebSocket dans Deno pour vous abonner manuellement. Pour plus de détails, voir la documentation des requêtes en direct.

Étape 3 – Appliquer la sécurité avec les ACL et les CLP

Aperçu

Les ACL (Listes de Contrôle d'Accès) et les CLP (Permissions au Niveau de la Classe) de Back4App protègent vos données. Utilisez les CLP pour définir des règles par défaut pour une classe entière. Ensuite, utilisez les ACL pour des restrictions au niveau des objets.

Configuration des permissions au niveau de la classe

  1. Ouvrez la base de données section dans votre tableau de bord Back4App.
  2. Sélectionnez une classe (par exemple, “Todo”).
  3. Allez dans les autorisations au niveau de la classe onglet.
  4. Activez ou désactivez l'accès en lecture/écriture pour le public ou pour les utilisateurs authentifiés selon les besoins.
Document image


Configuration des ACL

Lors de la création ou de la mise à jour d'un objet via REST, vous pouvez inclure un attribut ACL dans le corps de la requête. Par exemple :

Text


Cet exemple ne permet qu'au rôle “Admins” de lire ou d'écrire. L'accès public est désactivé.

Étape 4 – Écriture de fonctions Cloud Code

Pourquoi Cloud Code

Cloud Code est l'endroit où vous stockez la logique sécurisée côté serveur. Vous ne gérez pas les serveurs vous-même. Vous pouvez ajouter des validations ou des déclencheurs pour des classes spécifiques.

Exemple de fonction Cloud Code

Vous pouvez définir une fonction Cloud (en JavaScript) et la déployer sur votre application. Par exemple, une fonction pour vérifier la longueur du texte pourrait être :

Text


Déploiement

Vous pouvez déployer du code via le Back4App CLI ou le panneau Cloud Code dans votre tableau de bord Back4App.

NPM sur Cloud Code

Vous pouvez importer des bibliothèques externes avec require(). Une fois déployé, l'environnement serveur les exécutera. Cela est utile pour des tâches avancées, mais n'oubliez pas que les exécuter depuis Deno est séparé de votre environnement Cloud Code sur Back4App.

Étape 5 – Configuration de l'authentification

Activer l'authentification

Back4App utilise la classe Parse User pour l'authentification. Pendant que vous travaillez avec Deno, vous pouvez appeler des points de terminaison REST pour gérer les utilisateurs.

S'inscrire et se connecter en utilisant REST

Text


Connexion Sociale

Vous pouvez configurer Google, Facebook, Apple et d'autres fournisseurs sur Back4App. Ensuite, vous appellerez les points de terminaison dédiés avec des jetons OAuth. Voir la documentation de Connexion Sociale de Back4App pour plus de détails.

Étape 6 – Gestion du Stockage de Fichiers

Télécharger et Récupérer des Fichiers

Pour télécharger des fichiers depuis Deno, utilisez une requête POST vers https://parseapi.back4app.com/files/<FILENAME>. Par exemple:

Text


Vous pouvez ensuite stocker l'URL du fichier résultant dans vos objets de classe. Cette méthode est parfaite pour stocker des images ou des documents pendant que vous exécutez le serveur dans Deno.

Étape 7 – Vérification de l'email et réinitialisation du mot de passe

Aperçu

La vérification des emails garantit un accès légitime. La réinitialisation du mot de passe aide les utilisateurs à retrouver un accès sécurisé.

Configuration du tableau de bord

  1. Activer la vérification par email dans votre tableau de bord Back4App sous Paramètres d'email.
  2. Personnaliser vos modèles de vérification.
  3. Activer la réinitialisation du mot de passe et définir votre mise en page d'email préférée.

Lorsqu'un utilisateur s'inscrit, il reçoit un lien de vérification si vous avez activé la vérification par e-mail. Pour réinitialiser le mot de passe, appelez le point de terminaison REST POST /requestPasswordReset.

Étape 8 – Planification des tâches avec les travaux Cloud

Aperçu des travaux Cloud

Les travaux Cloud s'exécutent périodiquement sans intervention humaine. Par exemple, vous pouvez supprimer des anciens enregistrements quotidiennement ou envoyer des rappels par e-mail réguliers.

Text


Après avoir déployé ce travail, vous pouvez le planifier dans Paramètres de l'application > Paramètres du serveur > Travaux en arrière-plan sur votre tableau de bord Back4App.

Étape 9 – Intégration des Webhooks

Définition

Un Webhook est un rappel HTTP déclenché lorsque des événements se produisent, tels que la création ou la mise à jour d'objets. Vous pouvez vous intégrer à Slack, Stripe ou tout service externe.

Configuration

  1. Ouvrez “Plus” > “WebHooks” dans le tableau de bord Back4App.
  2. Cliquez sur “Ajouter un Webhook” et fournissez le point de terminaison de votre service tiers.
  3. Définissez quels déclencheurs ou classes vous souhaitez envoyer des requêtes.
Ajout d'un Webhook
Ajout d'un Webhook


Cela permet aux systèmes externes de recevoir des données chaque fois que vous créez ou modifiez des objets dans Back4App.

Étape 10 – Exploration du panneau d'administration Back4App

Introduction au panneau d'administration

Les équipes non techniques peuvent utiliser ce panneau pour gérer les données visuellement. Il simplifie les opérations CRUD et les revues de données.

Comment activer

  1. Allez dans le tableau de bord de l'application > Plus > Application Admin et choisissez “Activer l'application Admin.”
  2. Créez un utilisateur administrateur pour vous connecter.
  3. Définissez un sous-domaine pour votre application Admin.
Activer l'application Admin
Activer l'application Admin


Vous pouvez ensuite vous connecter à l'application Admin pour gérer les enregistrements en toute sécurité.

Conclusion

Dans ce tutoriel, vous avez découvert comment construire un backend pour Deno sur Back4App. Vous avez créé des modèles de données, géré l'authentification des utilisateurs, appris sur les ACL et les CLP pour la sécurité, et programmé des tâches Cloud.

Vous avez également vu comment intégrer des API externes via des webhooks et comment exécuter le serveur ou les APIs REST avec des commandes deno run --allow-net.

Cette configuration vous permet de démarrer rapidement sans configurer manuellement des systèmes de fichiers ou des complexités de bibliothèque standard pour l'architecture serveur.

Prochaines étapes :

  • Développez votre application Deno avec des points de terminaison supplémentaires et une logique avancée utilisant Cloud Code.
  • Intégrez plus de services (par exemple, passerelles de paiement, analyses) avec vos données Back4App.
  • Référez-vous à la documentation officielle de Back4App pour des conseils plus approfondis sur la sécurité, la performance et l'analyse des journaux.
  • Expérimentez avec des fonctionnalités avancées en temps réel ou le stockage kv de deno, reliant les données entre votre runtime Deno et l'environnement robuste de Back4App.

Avec vos nouvelles connaissances, vous pouvez déployer en toute confiance un backend Deno sécurisé, évolutif et riche en fonctionnalités soutenu par Back4App.