Quickstarters

Comment créer un backend pour Xamarin ?

30min

Introduction

Dans ce tutoriel, vous apprendrez à construire un backend pour vos Xamarin applications mobiles en utilisant les puissantes fonctionnalités de Back4App.

Nous nous appuierons sur le REST API de Back4App, GraphQL, et d'autres options d'API web au lieu d'utiliser un SDK dédié. Cette approche garde votre mobile client léger et flexible, vous permettant de vous connecter à vos données via de simples appels HTTP.

Nous aborderons la création de modèles de base de données, l'application de la sécurité, la gestion de l'authentification et l'exécution d'opérations sur des fichiers.

En suivant ces étapes, vous verrez comment construire rapidement et en toute sécurité un backend pour xamarin.

Vous explorerez également la planification de tâches automatisées et l'intégration de webhooks pour étendre la fonctionnalité de votre Xamarin application, afin que vous puissiez vous concentrer sur le codage de votre interface utilisateur au lieu de jongler avec les configurations du serveur.

Une fois que vous aurez terminé ce guide, vous disposerez d'un modèle réutilisable pour créer des applications mobiles qui s'appuient sur Back4App pour leur backend.

Vous comprendrez également comment appliquer des Listes de Contrôle d'Accès (ACL), écrire du Code Cloud (si nécessaire), et incorporer des flux de travail avancés comme des Requêtes en Direct ou des Tâches Cloud dans votre solution finale.

Prérequis

Pour tirer le meilleur parti de ce tutoriel, assurez-vous d'avoir :

Avec ces prérequis prêts, vous serez prêt à suivre et à connecter votre projet Xamarin à Back4App.

Étape 1 – Création d'un nouveau projet sur Back4App et connexion

  1. Créez un projet Back4App dans votre tableau de bord Back4App. C'est la base de votre backend.
  2. Nommez votre projet (par exemple, “Xamarin-Backend-Tutorial”).
  3. Localisez vos clés d'application en allant dans la section “Sécurité & Clés” de l'application. Vous verrez les clés REST, GraphQL ou d'autres clés que vous pourriez utiliser lors des requêtes depuis votre client mobile.
  4. Configurez votre projet Xamarin pour effectuer des requêtes HTTP. Au lieu d'un SDK Parse, vous utiliserez soit HttpClient, soit toute bibliothèque réseau de votre choix, pour appeler les REST ou GraphQL de votre application Back4App.

Par exemple, vous pouvez stocker votre ID d'application et votre clé API REST dans un endroit sécurisé ou dans un fichier de constantes :

C#


Lors de l'appel de l' api web, incluez toujours ces informations d'identification dans les en-têtes de votre requête. Cela garantit que vos requêtes sont dirigées vers la bonne application avec l'autorisation requise.

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

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

Utilisez le tableau de bord Back4App pour définir vos classes ou laissez-les être créées dynamiquement lors de la première demande. Par exemple, si vous voulez une Todo classe, vous pouvez la créer dans la Database section ou à la volée via des appels REST API :

Bash


2. Création d'un modèle de données en utilisant l'agent IA

Back4App fournit un AI Agent qui peut générer des structures de classe complètes :

  1. Ouvrez l'agent IA dans votre projet Back4App.
  2. Décrivez votre modèle (par exemple, “Veuillez créer une nouvelle classe nommée ‘Todo’ avec les champs titre et isCompleted.”).
  3. Confirmez pour générer le schéma automatiquement.
Document image


3. Lecture et écriture de données (REST)

Dans votre Xamarin projet, vous pouvez écrire une public class (par exemple, RestClient) qui gère toutes les requêtes vers Back4App:

C#


4. Lecture et écriture de données (GraphQL)

Pour les requêtes GraphQL, vous pouvez envoyer des requêtes à l'endpoint GraphQL de Back4App:

Bash


De même, depuis Xamarin, vous pourriez POST un corps JSON avec votre chaîne GraphQL à https://parseapi.back4app.com/graphql.

5. Travailler avec des requêtes en direct (optionnel)

Bien que vous utilisiez des appels d'API web plutôt que le SDK Parse, vous pouvez toujours activer les requêtes en direct si vous souhaitez des mises à jour de données en temps réel. Vous utiliseriez des connexions spécialisées (WebSockets) pour vous abonner aux changements de classe. Activer les requêtes en direct depuis les Paramètres du serveur de votre application dans Back4App, puis utilisez une bibliothèque cliente compatible dans Xamarin, si disponible. Alternativement, vous pouvez construire votre propre solution WebSocket ou vous fier à des sondages si le support en temps réel est optionnel pour votre application.

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

1. Aperçu des ACL et des CLP

La sécurité de Back4App comprend Class-Level Permissions (CLPs) et Access Control Lists (ACLs). Les CLPs définissent quels utilisateurs ou rôles peuvent lire/écrire dans une classe entière. Les ACLs ajoutent une sécurité par objet. Combinez-les pour vous assurer que seuls les utilisateurs autorisés peuvent manipuler vos données.

2. Configuration des autorisations au niveau de la classe

  1. Ouvrez la section Base de données sur Back4App.
  2. Sélectionnez votre classe (comme Todo).
  3. Allez aux autorisations au niveau de la classe pour définir les règles de lecture/écriture. Vous pouvez autoriser uniquement les utilisateurs authentifiés à lire ou écrire. Cela garantit que votre client mobile doit se connecter avant de lire les données.

Étape 4 – Écriture de fonctions Cloud Code

1. Pourquoi Cloud Code

Le Cloud Code vous permet d'exécuter une logique personnalisée côté serveur. Vous pouvez créer des règles métier, des validations ou des déclencheurs qui s'exécutent lorsque les données changent. Cela réduit le risque de falsification puisque la logique s'exécute en dehors du client mobile.

2. Exemple de fonction et déclencheurs

Voici un exemple simplifié d'une fonction Cloud dans le main.js fichier :

JS


3. Déploiement

Pour déployer, vous pouvez utiliser le Back4App CLI ou la section Cloud Code dans votre tableau de bord. Une fois déployé, vous pouvez appeler vos fonctions depuis Xamarin via REST:

Bash


4. Modules NPM

Si vous avez besoin de bibliothèques supplémentaires, installez-les via npm dans le dossier de votre projet Cloud Code. Après cela, require les dans votre main.js. Cette approche est utile pour appeler des API tierces depuis le côté serveur.

Étape 5 – Configuration de l'authentification

1. Activer l'authentification des utilisateurs

Dans Back4App, la _User classe gère les identifiants des utilisateurs. Sous Paramètres de l'application, vous pouvez activer l'authentification des utilisateurs, la vérification des e-mails et les paramètres de réinitialisation de mot de passe.

2. Inscription / Connexion des utilisateurs (REST)

Depuis votre projet Xamarin, vous pouvez écrire des méthodes C# pour gérer l'inscription et la connexion :

C#


Vous pouvez ensuite stocker les jetons de session côté client pour de futures requêtes.

3. Connexion sociale

Pour intégrer des connexions sociales (par exemple, Google, Facebook), consultez les documents de connexion sociale Back4App. Chaque fournisseur a son propre flux OAuth, que vous pouvez gérer depuis votre client mobile. Ensuite, passez les jetons retournés à Back4App.

Étape 6 – Gestion du stockage de fichiers

1. Configuration du stockage de fichiers

Les fichiers peuvent être téléchargés en envoyant une requête POST avec les données du fichier dans le corps. Par exemple, pour stocker une image depuis votre application Xamarin, lisez l'image dans un tableau d'octets, puis envoyez :

Bash


2. Exemple de téléchargement avec C#

C#


3. Considérations de sécurité

Pour sécuriser les téléchargements de fichiers, allez dans vos Paramètres du serveur Back4App et ajustez les Permissions de fichiers. Par exemple, vous pouvez autoriser uniquement les utilisateurs authentifiés à télécharger.

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

1. Vue d'ensemble

La vérification par e-mail garantit que les utilisateurs possèdent l'e-mail avec lequel ils se sont inscrits. Les liens de réinitialisation de mot de passe leur permettent de retrouver l'accès s'ils oublient leurs mots de passe.

2. Configuration du tableau de bord Back4App

  1. Activer la vérification par email sous Paramètres de l'email.
  2. Modifier le modèle de réinitialisation de mot de passe et définir l'adresse “De”.
  3. Vous pouvez également personnaliser le contenu de l'email pour correspondre à votre image de marque.

3. Mise en œuvre

Une fois activé, si un utilisateur s'inscrit avec un email, il recevra un lien de vérification. Les appels de réinitialisation de mot de passe sont effectués vers la même API de base avec l'email de l'utilisateur pour déclencher un email de réinitialisation.

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

1. Ce que font les Cloud Jobs

Les Cloud Jobs vous permettent de planifier des tâches de routine, telles que le nettoyage des anciennes données ou l'envoi d'emails de résumé quotidien, le tout depuis la plateforme Back4App.

2. Exemple

JS


Déployez le Cloud Code, puis planifiez le travail sous Paramètres de l'application > Paramètres du serveur > Tâches d'arrière-plan.

Étape 9 – Intégration des Webhooks

  1. Définir un webhook sur Back4App en naviguant vers Plus > WebHooks et en cliquant sur “Ajouter un Webhook.”
  2. Fournir le point de terminaison, tel que https://your-service.com/webhook-endpoint.
  3. Choisir des déclencheurs, comme “Nouvel objet dans la classe Todo.”
Document image


Les webhooks peuvent notifier des services tiers, de sorte que votre application Xamarin puisse rester légère pendant que des systèmes externes gèrent la logique ou les notifications supplémentaires.

Étape 10 – Exploration du panneau d'administration Back4App

L' Application d'administration Back4App est un moyen convivial de gérer les opérations CRUD sans écrire de requêtes. Activez-le dans Tableau de bord de l'application > Plus > Application d'administration. Créez un utilisateur administrateur, choisissez un sous-domaine et connectez-vous.

Document image


Cette application d'administration est idéale pour les membres non techniques de l'équipe qui doivent gérer des données mais ne devraient pas avoir accès directement à la base de données.

Conclusion

Vous venez de voir comment construire un backend pour Xamarin en utilisant Back4App APIs. Vous avez créé des classes sécurisées, ajouté des CLPs et des ACLs, géré l'authentification, et exploré les téléchargements de fichiers, la planification de tâches, et l'intégration avec des services externes. Cette approche garantit que vos applications mobiles restent rapides et flexibles tout en tirant parti de la puissance d'une base de données hébergée et d'un environnement cloud.

Prochaines étapes

  • Développez votre application Xamarin pour gérer une logique plus complexe, le caching, ou des rôles et permissions avancés.
  • Plongez dans des fonctionnalités avancées, telles que les notifications push, ou intégrez des données en temps réel avec des requêtes en direct si vous avez besoin de mises à jour collaboratives.
  • Visitez la documentation officielle de Back4App pour des guides plus approfondis sur la sécurité, la performance et le débogage.
  • Créez des solutions réelles en mélangeant des APIs tierces (passerelles de paiement, analytics, réseaux sociaux) avec votre backend Back4App. Cette combinaison peut améliorer la fonctionnalité de votre client mobile et garder votre code organisé.