Fiche 07.02 — HTTP, JSON et Codable
Objectif
Comprendre les bases nécessaires pour parler à une API REST depuis une app iOS : méthode HTTP, URL, headers, body JSON, status code et décodage avec Codable.
1. HTTP en version simple
Une app mobile parle souvent à un backend via HTTP.
Une requête contient généralement :
2. Méthodes principales
Exemples :
3. JSON
JSON est un format texte très utilisé pour échanger des données.
Exemple réponse API :
En Swift, on transforme ce JSON en struct.
4. Codable
Codable signifie que le type peut être encodé et décodé.
Decodable: JSON → SwiftEncodable: Swift → JSONCodable: les deux
5. Décoder du JSON
Dans une vraie app, les données viennent de URLSession.
6. Encoder du JSON
Ce body peut être envoyé dans une requête POST.
7. Headers importants
Exemples classiques :
En Swift :
8. Status codes utiles
Une bonne app ne regarde pas seulement si elle reçoit des données. Elle vérifie aussi le status code.
9. DTO vs Model
DTO : format proche de l’API.
Model : format propre à l’app.
Mapping :
Pour une petite app, tu peux parfois utiliser le même type. Pour une app pro, séparer DTO et Model évite de dépendre trop fortement du backend.
Résumé
- HTTP permet à l’app de parler au backend.
- Les méthodes principales sont GET, POST, PUT, PATCH, DELETE.
- JSON est le format le plus courant pour les APIs REST.
Codablepermet d’encoder et décoder facilement.- Les headers transportent des informations comme le token.
- Les status codes doivent être vérifiés.
- DTO et Model peuvent être séparés pour garder une app propre.