Initial vault setup
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
---
|
||||
title: API REST
|
||||
created: 2026-06-06
|
||||
updated: 2026-06-06
|
||||
type: concept
|
||||
tags: [tech, protocol, web]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [synthesized]
|
||||
---
|
||||
# 📡 API REST
|
||||
|
||||
## Définition Courte
|
||||
**REpresentational State Transfer** : style d'architecture pour les APIs web basé sur le protocole HTTP, les méthodes standard (GET, POST, PUT, DELETE) et des ressources identifiées par URL.
|
||||
|
||||
## Explication Détaillée
|
||||
REST a été défini par Roy Fielding en 2000. Les principes clés :
|
||||
- **Stateless** : chaque requête contient toute l'info nécessaire (pas de session serveur).
|
||||
- **Ressources** identifiées par URI (`/users/42`).
|
||||
- **Représentations** : JSON, XML, etc. (le plus souvent JSON aujourd'hui).
|
||||
- **Méthodes HTTP sémantiques** : GET (lecture), POST (création), PUT/PATCH (modif), DELETE (suppression).
|
||||
- **HATEOAS** (optionnel) : liens hypermédia dans les réponses.
|
||||
|
||||
## Cas d'Usage
|
||||
- APIs publiques (GitHub, Stripe, Twilio).
|
||||
- Communication frontend ↔ backend.
|
||||
- Microservices.
|
||||
|
||||
## Outils Liés
|
||||
- **Frameworks** : Express, FastAPI, Gin, Spring.
|
||||
- **Documentation** : OpenAPI / Swagger.
|
||||
- **Tests** : Postman, Insomnia, HTTPie.
|
||||
|
||||
## Pages Liées
|
||||
- [[concepts-web]]
|
||||
- [[graphql]]
|
||||
|
||||
## Questions Ouvertes
|
||||
- REST vs GraphQL : quel trade-off pour quel projet ?
|
||||
- Comment versionner une API REST proprement ?
|
||||
Reference in New Issue
Block a user