API REST
01
Table des matières
01 Historique et Définition 02 Principes de base de
REST
03 Architectur 04 Documentation de
e l’API
05 Versionnement des 06 Conclusion
API
07 Démo
02
Historique
&
Définition
03
.01
Historique et Définition
REST fut créé par Roy Fielding en 2000.
Une API REST est une interface de
programmation d'application (API) qui
respecte les normes définies par le style
d'architecture REST(REpresentational State
Transfer) .
04
Principes
de base
de REST
05
.02
Principes de base de REST
REST est caractérisé par des principes
fondamentaux établis par Roy Fielding.
Cependant, il existe plusieurs résumés de
ces principes qui convergent sur de
nombreux points.
06
Les 5 règles
Règle 1 Règle 2
L’URI comme Les méthodes
identifiant des HTTP comme
ressources. identifiant des
opérations.
Règle 3
Les réponses HTTP
comme
représentation des
ressources
07
Les 5 règles
Règle 4
Les liens comme
relation entre les
ressources
Règle 5
L’implémentation
de la sécurité en
utilisant un jeton
d’authentification
08
Les 6 règles
Règle 1 Règle 2
Séparation du Sans état
client et du (Stateless)
serveur
Règle 3
Garder la cache
(Cacheable)
09
Les 6 règles
Règle 4 Règle 5
Interface Uniforme Système de couche
(Uniform (Layered system)
interface)
Règle 6
Code à la demande
10
Architecture
11
.03
ARCHITECTURE
L’architecture de REST utilise les
spécifications originelles du protocoles
HTTP plutôt que de réinventer une
surcouche
12
ARCHITECTURE
13
Documentation
de
l’API
14
.04
Documentation
SWAGGER
Swagger est un outil qui
permet de créer,
documenter, et tester
des API REST de
manière simple et
interactive.
15
Documentation
APIARY
Apiary est un outil en
ligne qui aide à
concevoir, documenter,
tester et simuler des
API REST
16
Versionnement
des API
17
.05
Versionnement des API
Version dans
l'URL Version dans l'en-tête HTTP
Simple à comprendre et Simple à comprendre et à
à implémenter implémenter
GET /api/v1/users GET /api/users
GET /api/v2/users Header: Accept-Version: v1
18
.06 Conclusion
Les API REST continuent à faire leur preuve dans le monde
des applications distribuées. Grâce à leur architecture
simple, flexible, et scalable, elles permettent aux systèmes
d'échanger des données de manière fluide et efficace, tout
en restant indépendants les uns des autres.
19
MERCI
DE VOTRE ATTENTION
20
DÉMO
2 .07