PI =====
Pour fonctionner, une API a besoin d’un serveur et d’un client :
* un serveur est un ordinateur puissant permettant d’exécuter une API. C'est le fournis... est un programme qui échange les données avec un serveur à travers l’API.
C'est l'utilisateur de l'API. On parle plus couramment d'architecture client-serveur.
==== Rôle du client ====
Le client initie l’éc
ication avec séparation des rôles entre client et serveur ;
* **stateless server** – les requêtes doivent... res au traitement ;
* **cache** – la réponse du serveur doit être mise en mémoire côté client ;
* **uni... e** – la méthode de communication entre client et serveur doit être sous la forme d'une URL.
===== Clés d... ncipes clés :
- Une ressource distribuée sur un serveur distant (mécanisme client-serveur) ;
- Un ident
ise HTTP pour faire une requête de ce site web au serveur. REST fonctionne de la même façon !
Si vous ne ... ons ensemble de quoi il s’agit :
==== 1 - Client-serveur separation ====
L’une des normes de REST est la **séparation du client et du serveur**. Nous avons un peu abordé la question des clien... vous puissiez accéder aux derniers tweets.
Un **serveur** est un ordinateur distant capable de récupérer
, revoyons ensemble les bases d’une communication serveur et client.
Prenons l’exemple d'Air France, une c... rmations de quelqu’un.
Ce quelqu’un, c’est le **serveur**. L’application doit avoir une conversation avec le serveur.
{{schema_com_client_serveur.png|Un échange typique entre client et serveur}}
Cela ressemble à ça :
*
on avec une API REST se fait sur un modèle client-serveur. Qu'est-ce que cela signifie ?**(Plusieurs répons... r chercher les informations qu'il souhaite sur le serveur.
- Le client peut émettre une requête au serveur pour obtenir des informations et le serveur y répondra avec les informations.
- Le client peut effectuer
’est-ce que l’authentification ? =====
Client et serveur communiquent. Savoir parler, c'est génial, mais comment le serveur est-il sûr que le client est bien celui qu'il pré... ètement, quand vous vous authentifiez auprès d'un serveur, vous prouvez votre identité en lui donnant des i... mations que vous seul connaissez. Une fois que le serveur sait qui vous êtes, il peut vous faire confiance
terez peut-être développer une application client-serveur comme un client Web. Votre client Web doit communiquer avec un serveur via le réseau. Pour échanger avec un serveur, il doit envoyer des messages conformes à un protocole particulier. Le serveur comprend donc ce qu'il reçoit. Ensuite, à l'autre
il brille et raconter vos dernières péripéties au serveur. Avez-vous envisagé une carrière d'actrice ? ;-)"... onnées** en Python de manière sécurisée.
* Un **serveur web** dont le rôle va être de recevoir des requêt... oujours** besoin de gérer les requêtes HTTP, d'un serveur web, d'afficher des pages web dynamiques, de gére... app.run()
</code>
Le code ci-dessous lance un serveur web disponible dans le port 5000. En bref, il aff
e les hooks peuvent se situer côté client ou côté serveur :
* le côté client correspond à ce qui se pass... qui est sur votre poste de travail ;
* le côté serveur correspond à ce qui se passe sur le repository Gi... envoyés sur le repository distant. Les hooks côté serveur permettront de contrôler ou d’ajouter des traitements lorsque des fichiers arriveront sur le serveur (par exemple à la suite d’un git push).
<note>
A
st:le-test-ultime.hello-birds.com
</code>
* Le serveur à l'adresse ''le-test-ultime.hello-birds.com'' **... n de la méthode HTTP utilisée et de l'URL.
* Le serveur **exécute la vue** : éventuellement, si la route ... un template est demandé, la vue l'appelle.
* Le serveur **transmet la réponse HTTP** de la vue au navigat... clarez une route sans le slash final (/index), le serveur renverra une erreur 404 (page non trouvée) si l'u
de deux parties: une partie client et une partie serveur et qui permet d'effectuer des requêtes HTTP. ci,... t que j'appuie sur entrée, en fait on contacte le serveur de cette application web et ça nous rend une répo... mière partie qui correspond à la configuration du serveur. En premier lieu, sur la première ligne des décla... : une clé, une valeur.
Pour faire fonctionner le serveur, on ne va pas seulement définir la configuration
sont relativement légers et leur traitement côté serveur est donc rapide.
===== Le XML =====
**XML** si... PI REST, les communications entre le client et le serveur se font via le protocole HTTP. Généralement les données retournées par le serveur sont formatées avec JSON.
===== Transmission des...
Comment transmettre des paramètres du client au serveur ?
Eh bien, en utilisant l'URL !
3 symboles sont
e l'application (nous y reviendrons).
Arrêtez le serveur et créez donc les dossiers suivants : ''**templat... pportées sont correctes en tentant de relancer le serveur :
<code bash>
python3 ./run.py
</code>
===== À r... Pour voir votre application, Flask vient avec un serveur de développement accessible à l’adresse locale '
- Si une API est stateless, cela signifie que le serveur ne stocke pas en base de données les requêtes et ... |
Choix 3 et 4. Une API stateless signifie que le serveur ne sauvegarde aucune des requêtes ou réponses pré
êtes** du client à l’API, qui passe la requête au serveur, l’API récupère la **réponse** et la renvoie enfi... |
^ 400+ | Erreur client |
^ 500+ | Erreur serveur |
Les codes HTTP sont normalisés, et chaque no