Skip to content

Flux de Requête et Contrat d'Interface

L'un des piliers de L'Atelier du Bois est la sécurisation des données entrantes et l'homogénéité des réponses.

🛡️ Le concept de RequestMapper

Pour éviter de polluer les contrôleurs avec de la logique d'extraction ou de validation, j'ai centralisé le traitement des paramètres (Query, Route, JSON) dans des RequestMappers.

Le processus :

  1. Extraction : Récupération brute des données.
  2. Validation : Vérification stricte de l'intégrité (via le composant Validator).
  3. Transformation : Injection dans un DTO typé.

📡 Standardisation des Réponses

Toutes les sorties de l'API sont normalisées via une classe ApiResponse. Cela garantit que le Frontend reçoit toujours une structure identique, facilitant l'interprétation des succès comme des erreurs.

  • DTOs dédiés : Réorganisation en répertoires Request et Response avec des propriétés privées pour un meilleur encapsulage.
  • OpenAPI (Swagger) : Intégration de modèles OAModel spécifiques pour générer une documentation interactive fidèle au contrat d'interface.

📊 Cas d'usage : Système de Ratings

L'implémentation des avis clients a servi de crash-test pour cette architecture :

  • Filtrage dynamique par date, note croissante/décroissante ou score spécifique (étoiles).
  • Calcul automatisé des moyennes de notation via les services dédiés.