Documentation Frontend (DF2)

Guide d’Utilisation des Services

Temps estimé :3 minutes 36 views

Les services du projet jouent un rôle central dans la gestion des interactions entre le frontend et le backend. Ils encapsulent toutes les requêtes HTTP et permettent aux différents modules de l’application d’effectuer des opérations complexes tout en garantissant la sécurité et la cohérence des données.

Rôle des Services

Les services sont conçus comme des classes singleton qui centralisent les appels vers les API, en fournissant des méthodes standardisées pour effectuer les actions CRUD (Create, Read, Update, Delete) ainsi que des fonctionnalités spécifiques comme la gestion des sessions, des profils, des catégories, et de l’authentification.

Principaux Services et leurs Fonctionnalités

1. ApiService : Le service principal pour toutes les requêtes HTTP standard (GET, POST, PUT, DELETE). Il configure Axios pour la communication avec le backend, définit des en-têtes par défaut et inclut des intercepteurs pour gérer des fonctionnalités comme les barres de progression de chargement.

2. JwtService et TokenService : Ces services gèrent les tokens d’authentification pour les sessions sécurisées. JwtService stocke le token JWT pour les requêtes d’authentification, tandis que TokenService rafraîchit le token si nécessaire, garantissant la persistance de la session utilisateur.

3. ProfileService : Fournit des méthodes pour les opérations sur les profils utilisateur, comme la mise à jour des informations personnelles, la récupération et la suppression de profil. Il inclut la gestion du token CSRF pour une sécurité renforcée lors des requêtes.

4. CategoryService : Gère toutes les interactions liées aux catégories, comme la création, la modification, la suppression, et la récupération de catégories. Ce service centralise les opérations et assure la cohérence des données de catégories.

Gestion de la Sécurité et des Erreurs

Les services intègrent des mécanismes de sécurité, notamment les tokens JWT pour l’authentification et les tokens CSRF pour protéger contre les attaques Cross-Site Request Forgery. Ils utilisent également des outils comme ErrorMapper pour convertir les erreurs du backend en messages clairs et des gestionnaires pour les erreurs de session, garantissant une expérience utilisateur cohérente.

Conclusion

Les services du projet sont la couche intermédiaire entre l’interface utilisateur et le backend, assurant la sécurité, la réutilisabilité et la robustesse de l’application. Ils facilitent le développement en fournissant des méthodes fiables pour interagir avec l’API, simplifiant ainsi la gestion des données dans toute l’application.

CONTENTS