Quickstarters

Comment construire un backend pour Dart ?

25min

Introduction

Dans ce tutoriel, vous apprendrez comment construire un backend pour Dart en utilisant Back4app.

Nous nous concentrerons sur l'intégration des fonctionnalités essentielles de Back4app—telles que la gestion de base de données, les fonctions Cloud Code, les API REST et GraphQL, l'authentification des utilisateurs et les requêtes en temps réel (Live Queries)—dans un projet basé sur Dart.

Étant donné que Dart est un langage de programmation polyvalent, vous pouvez l'utiliser pour divers projets backend, des serveurs web simples aux applications à grande échelle.

En tirant parti de l'environnement intuitif de Back4app, vous configurerez rapidement un cadre backend robuste et sécurisé sans lourde maintenance de serveur.

Vous verrez comment des fonctionnalités telles que les ACL, les CLP, la planification de tâches en arrière-plan et la création de logique personnalisée avec Cloud Code rationalisent vos opérations côté serveur.

Après avoir terminé ce tutoriel, vous serez prêt à faire évoluer votre backend Dart ou à ajouter des intégrations plus avancées.

Prérequis

Pour compléter ce tutoriel, vous aurez besoin de :

  • 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.
  • Environnement de développement Dart de base Vous pouvez le configurer en installant le SDK Dart et tout éditeur de votre choix. Pour plus d'informations, voir Obtenir le SDK Dart.
  • Dart 2.0 ou supérieur Assurez-vous que votre environnement est à jour, afin de pouvoir profiter des fonctionnalités récentes de Dart et des bibliothèques côté serveur comme package shelf.
  • Familiarité avec Dart et les concepts backend Si vous êtes nouveau dans Dart, consultez la Documentation officielle de Dart. pour acquérir une maîtrise de base.

Assurez-vous d'avoir tous ces prérequis en place avant de commencer. Avoir votre projet Back4app prêt et votre environnement Dart local correctement configuré vous aidera à suivre plus facilement.

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

  1. Pourquoi créer un nouveau projet Back4app ? Un nouveau projet Back4app constitue la base de votre backend, gérant votre base de données, la sécurité, les API, le stockage de fichiers, et plus encore. Il vous donne une structure organisée pour construire votre logique côté serveur basée sur Dart.
  2. Créer un projet Back4app
    • Connectez-vous à votre compte Back4app.
    • Cliquez sur “Nouvelle application” dans le tableau de bord Back4app.
    • Donnez à votre application un nom descriptif (par exemple, “Dart-Backend-Tutorial”).
Document image


Une fois créé, votre projet apparaîtra dans le tableau de bord Back4app. Ce projet est l'endroit où vous configurerez tous les paramètres backend pour votre application Dart.

  1. Installez le SDK Parse et connectez-vous Bien que Dart n'ait pas de SDK Parse officiel, il existe des bibliothèques maintenues par la communauté comme parse_server_sdk qui permettent l'intégration avec Back4app. Vous pouvez l'ajouter en incluant la dépendance suivante dans le fichier pubspec.yaml:
YAML


Exécutez ensuite :

Bash


Initialiser Parse dans votre code Dart (par exemple, dans un main.dart fichier) :

Dart


Récupérez votre Application ID, JavaScript Key, et Parse Server URL depuis le tableau de bord Back4app (sous “Paramètres de l’application” > “Sécurité & Clés”). Avec cette étape, votre application Dart peut interagir en toute sécurité avec votre cadre backend Back4app.

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

  1. Créer un modèle de données Dans le tableau de bord Back4app, accédez à la section “Base de données” et créez une nouvelle classe (par exemple, “Todo”). Ajoutez des colonnes pour vos champs, tels que title (String) et isCompleted (Boolean).
  2. Créer un modèle de données en utilisant l'agent IA
    • Ouvrez l'agent IA dans votre tableau de bord d'application.
    • Décrivez votre schéma souhaité (par exemple, “Veuillez créer une classe ToDo avec des champs title et isCompleted.”).
    • Laissez l'agent IA finaliser le schéma pour vous.
Agent IA pour la création de schéma
Agent IA pour la création de schéma

  1. Lecture et écriture de données à l'aide du SDK Avec la bibliothèque parse_server_sdk, vous pouvez enregistrer et interroger des données depuis votre code Dart. Par exemple:
Dart

  1. Lecture et écriture de données à l'aide de l'API REST
Bash

  1. Lecture et écriture de données à l'aide de l'API GraphQL
GraphQL

  1. Travailler avec des requêtes en direct (optionnel) Pour activer les mises à jour en temps réel, activez les requêtes en direct dans votre tableau de bord Back4app (Paramètres du serveur). Vous pouvez ensuite vous abonner depuis Dart, bien que vous ayez peut-être besoin d'une bibliothèque spécialisée. La bibliothèque parse_server_sdk peut avoir un support partiel des requêtes en direct ; consultez sa documentation pour plus de détails.

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

  1. Aperçu
    • ACLs (Listes de Contrôle d'Accès): Restreindre la lecture/écriture au niveau de l'objet.
    • CLPs (Permissions au Niveau de la Classe): Restreindre la lecture/écriture au niveau de la classe.
  2. Étape par étape
    • Permissions au Niveau de la Classe: Dans le tableau de bord Back4app, ouvrez la section Base de données, choisissez une classe et configurez les CLPs sous « Sécurité ».
    • ACLs dans le Code (en utilisant le parse_server_sdk):
Dart


Étape 4 – Écriture des Fonctions Cloud Code

  1. Pourquoi Cloud Code Le Cloud Code est essentiel pour créer une logique métier personnalisée côté serveur. Il vous évite de gérer votre propre infrastructure et garde votre code sécurisé et évolutif.
  2. Exemple de Fonction et Déclencheurs Dans votre main.js (pour Cloud Code):
JS

  1. Déploiement
    • Utiliser le CLI Back4app:
    • Utiliser le tableau de bord:
      1. Allez à Cloud Code > Fonctions.
      2. Collez votre code dans main.js.
      3. Cliquez sur Déployer.
  2. NPM et Cloud Code Si vous avez besoin de modules NPM supplémentaires pour votre Cloud Code, spécifiez-les dans le package.json. Cela vous permet d'intégrer des API externes ou des opérations avancées directement depuis votre code côté serveur.

Étape 5 – Configuration de l'authentification

  1. Activer l'authentification des utilisateurs Dans le tableau de bord Back4app, vous pouvez activer la vérification par e-mail ou configurer des connexions sociales. Par défaut, la classe Parse User stocke les mots de passe de manière sécurisée.
  2. Exemples de code (utilisant parse_server_sdk en Dart):
Dart

  1. Connexion Sociale
    • Configurer des fournisseurs comme Google, Apple ou Facebook dans le tableau de bord Back4app.
    • Implémentez le plugin parse_server_sdk correspondant ou un flux OAuth personnalisé si disponible.

Étape 6 – Gestion du stockage de fichiers

  1. Configuration du stockage de fichiers Back4app héberge automatiquement les fichiers que vous téléchargez via les API Parse. Vous pouvez stocker des images, des documents ou tout type de fichier.
  2. Exemple (Dart)
  3. Considérations de sécurité Vous pouvez contrôler qui peut télécharger ou récupérer des fichiers en ajustant vos CLP ou rôles d'utilisateur dans le tableau de bord Back4app.

Étape 7 – Vérification par e-mail et réinitialisation du mot de passe

  1. Aperçu La vérification par e-mail confirme que les utilisateurs possèdent les e-mails avec lesquels ils s'inscrivent, tandis que les liens de réinitialisation de mot de passe fournissent un moyen sécurisé de gérer les identifiants perdus.
  2. Configuration du tableau de bord Back4App
    • Allez à Paramètres de l'application > E-mail.
    • Activez Vérifier les e-mails des utilisateurs et Réinitialisation du mot de passe.
    • Personnalisez vos modèles d'e-mail selon vos besoins.
  3. Mise en œuvre Lorsque les utilisateurs s'inscrivent avec un e-mail valide, ils reçoivent un lien de vérification par e-mail. Pour les réinitialisations de mot de passe, appelez la méthode requestPasswordReset de ParseUser (si disponible dans le parse_server_sdk) ou le point de terminaison REST.

Étape 8 – Planification des tâches avec Cloud Jobs

  1. Ce que font les Cloud Jobs Les Cloud Jobs vous permettent de planifier des tâches à intervalles réguliers, comme nettoyer les anciens enregistrements ou envoyer des rapports périodiques. Ils fonctionnent en arrière-plan, indépendamment des actions déclenchées par l'utilisateur.
  2. Exemple Dans main.js, ajoutez :
JS

  1. Planification
    • Allez à Paramètres de l'application > Paramètres du serveur > Tâches en arrière-plan.
    • Planifiez cleanupOldTodos pour s'exécuter quotidiennement ou à un intervalle de votre choix.

Étape 9 – Intégration des Webhooks

  1. Définition Les webhooks permettent à votre application Back4app d'effectuer des requêtes HTTP vers un service externe lors de certains événements. Cela est utile pour s'intégrer à des services tiers comme Slack ou Stripe.
  2. Configuration
    • Allez à Plus > WebHooks dans votre tableau de bord Back4app.
    • Cliquez sur Ajouter un Webhook et fournissez un point de terminaison (par exemple, https://your-external-service.com/webhook-endpoint).
    • Spécifiez l'événement déclencheur (par exemple, après qu'un Todo soit créé).
Ajout d'un Webhook
Ajout d'un Webhook

  1. Exemple Si vous avez une URL de Webhook Slack, vous pouvez la configurer pour recevoir une notification chaque fois qu'un nouveau Todo est inséré. Cette connexion transparente entre votre backend Dart et les outils externes améliore l'automatisation.

Étape 10 – Exploration du panneau d'administration Back4App

  1. Où le trouver Dans votre console Back4app, ouvrez Plus > Application Admin et activez le panneau.
  2. Fonctionnalités
    • Gérez facilement les enregistrements de la base de données.
    • Examinez les journaux, les tâches en arrière-plan et les analyses.
    • Contrôlez l'accès des utilisateurs et les rôles.
Activer l'application Admin
Activer l'application Admin


Conclusion

En suivant ces étapes, vous avez :

  • Construit un backend sécurisé pour Dart sur Back4app.
  • Géré votre base de données à travers les classes et champs Parse.
  • Créé un code Cloud personnalisé pour gérer la logique côté serveur.
  • Sécurisé les données en utilisant des ACL, CLP et l'authentification des utilisateurs.
  • Planifié des tâches en arrière-plan avec des Cloud Jobs.
  • Intégré des services externes en utilisant des Webhooks.
  • Exploré le panneau d'administration pour une gestion facile des données.

Cette base solide vous prépare à déployer des projets Dart de manière efficace, que vous construisiez des serveurs web à grande échelle, des microservices ou des applications spécialisées. À partir de là, vous pouvez faire évoluer votre framework backend, ajouter une logique plus complexe ou intégrer des fonctionnalités avancées telles que des notifications push ou des analyses avancées.

Prochaines étapes

  • Explorer la préparation à la production: Utilisez des stratégies de mise en cache, gérez la concurrence et optimisez les performances pour un trafic élevé.
  • Intégrer des fonctionnalités avancées: Telles que le contrôle d'accès basé sur les rôles, plus de connexions sociales ou des outils de collaboration en temps réel.
  • Consultez la documentation officielle de Back4app pour des informations plus approfondies sur les journaux, la sécurité et l'optimisation des performances.
  • Expérimentez avec des packages supplémentaires comme le package shelf pour créer des serveurs web personnalisés aux côtés de votre couche de données basée sur Parse, en tirant parti des capacités de Dart en tant que langage de programmation flexible.

Avec cette connaissance de comment construire un backend pour Dart, vous disposez d'un moyen puissant de gérer les données, de sécuriser vos processus côté serveur et d'automatiser les flux de travail de votre application, le tout sans avoir besoin d'une infrastructure significative.