-
Notifications
You must be signed in to change notification settings - Fork 2
R9 : API
API est une abréviation et signifie Application Programming Interface (ou interface de programmation d’application, en français). c’est un moyen de communication entre deux logiciels, que ce soit entre différents composants d’une application ou entre deux applications différentes.
on en distingue deux grands types qui sont les API REST (representational State Transfer ) et les API SOAP (simple Object Access Protocol).
SOAP est l’acronyme de Simple Object Access Protocol, ou protocole simple d’accès aux objets, en français. Contrairement à REST, il est considéré comme un protocole, et non comme un style d’architecture.
REST utilise le protocole HTTP pour communiquer, SOAP d’un autre côté peut utiliser de multiples moyens de communication.
il bénéficie de nombreux avantages tels que:
-
la séparation du client et du serveur, qui aide à scaler plus facilement les applications ;
-
le fait d’être stateless, ce qui rend les requêtes API très spécifiques et orientées vers le détail ;
-
la possibilité de mise en cache, qui permet aux clients de sauvegarder les données, et donc de ne pas devoir constamment faire des requêtes aux serveurs.
Son principal inconvénient réside au niveau de la sécurité car il n'est pas directement intégrable. il faut donc le développer par soi même
son principal avantage est il bénéficie d'une couche de sécurité et de confidentialité facilement intégralement.
par contre il a quelques inconvénients. tels que la complexité qui en ressort, car les développeurs doivent se coordonner pour s’assurer qu’ils communiquent de la même manière afin d’éviter les problèmes. De plus, le SOAP peut demander plus de bande passante, ce qui entraîne des temps de chargement beaucoup plus longs.
Dans le cadre de notre projet nous avons donc décider de mettre en place une API REST pour sa nature plus légère et plus flexible
Malgré qu'il existe plusieurs frameworks pour documenter notre api notamment RAML, APIBlueprint, Summation, Wrapper , Swagger et autres . Notre choix s'est orienté vers Swagger qui le plus grand framework pour la conception d'API utilisant un langage commun et permettant le développement tout au long du cycle de vie de l'API, y compris la documentation, la conception, les tests et le déploiement. Il peut être utilisé avec succès pour les tests d'API et la correction des bug.
Nous l'avons également choisi parce qu'il offre un ensemble d'outils comme:
- Swagger Inspector qui nous a permis de tester et générer automatiquement la documentation OpenAPI
- Swagger Editor permet d'écrire de la documentation sur l'API, de concevoir et de décrire de nouvelles API et de modifier celles existantes
blog
"blog": "http://crechesite.herokuapp.com/api/blog/",
galerie
Permet d'afficher la galerie photo des activités de la crèche
"galerie": "http://crechesite.herokuapp.com/api/galerie/",
utilisateur
Concerne tout les utilisateurs susceptible de se connecter
"utilisateur": "http://crechesite.herokuapp.com/api/utilisateur/",
enfant
Permet d'afficher les enfants inscrits à la crèche
"enfant": "http://crechesite.herokuapp.com/api/enfant/"
groupe
Permet d'afficher les deux groupes auxquels l'enfant appartient à la crèche
"groupe": "http://crechesite.herokuapp.com/api/groupe/",
album
Permet d'afficher les différents Albums photos se trouvant dans galérie .
"album": "http://crechesite.herokuapp.com/api/album/",
activité
Permet d'afficher les différents programmes de la crèche .
"activité": "http://crechesite.herokuapp.com/api/activite/",
agenda
Permet d'afficher les différentes dates des activités des enfants en fonctions des groupes.
"agenda": "http://crechesite.herokuapp.com/api/agenda/",