Vue d'ensemble de la configuration¶
La configuration HTTP Guardian se lit par couches. Chaque couche a une responsabilité distincte.
| Couche | Fichier ou objet | Responsabilité |
|---|---|---|
| Client | HttpClientOptions |
Décrit l'API cible et les comportements par défaut. |
| Requête | RequestOptions |
Décrit ce qui change pour un appel précis. |
| Auth | AuthConfig |
Produit les credentials au moment de la requête. |
| Parseur | ApiParser |
Convertit la réponse brute en ClientResult<T>. |
| Guards | HttpGuard[] |
Compose les comportements autour du transport. |
| Plugins | HttpPlugin[] |
Applique des politiques transversales à la création du client. |
Checklist d'intégration¶
- Donner un
baseUrlqui pointe vers la racine API, pas vers un endpoint final. - Déclarer
auth, même avecnoAuth(). - Choisir un parseur adapté à l'enveloppe réelle du backend.
- Définir les en-têtes globaux non sensibles dans
defaults.headers. - Mettre les timeouts et notifications par défaut au niveau client.
- Activer le cache uniquement sur les lectures idempotentes.
- Ajouter refresh, CSRF et idempotence avec des exclusions documentées.
Décision saine
Quand une option change selon l'utilisateur, la route ou un bouton, elle appartient souvent à RequestOptions. Quand elle change selon le backend, elle appartient au client.