Note
Interface entre deux ordinateurs ou deux programmes.
C’est une application qui offre des services à d’autres applications.
L’application implémente une API ou expose une API.
Termes assez vaste qui recouvre :
Note
Une API rend un service aux utilisateurs sans qu’ils aient à savoir comment elle fait.
Ils connaissent juste ce qu’elle attend en entrée et ce qu’elle produit !
Une API particulière
À votre avis, X permet-il à tout le monde d’accéder à leurs bases de données directement ?
Consiste à écrire une application qui :
Problèmes
Interface entre l’extérieur et notre système
Note
Un web service est un module applicatif, accessible sur le protocole HTTP via une URL qui va répondre à une demande
➡️ Comme un site web, mais pour les machines
Site de e-commerce
Note
Utile pour les grandes entreprises avec beaucoup de dev et de projets en parallèle.
Protocole de communication client-serveur développé pour le World Wide Web
N’est pas le seul : FTP, SMTP, IRC …
Il existe des protocoles non client-serveur : BitTorrent
Connexion sécurisée entre un client et un serveur :
GET https://pokeapi.co/api/v2/pokemon?limit=10&offset=200
Important
C’est le CRUD !
Un outil : un client HTTP
requests
import requests
# Construction de la requête
url = "https://data.rennesmetropole.fr/api/records/1.0/search/"
parametres = {"dataset": "etat-du-trafic-en-temps-reel", "rows": 2}
# Lancement de la requête
res = requests.get(url=url, params=parametres)
# Affichage du résultat
print(res.json())
print("\nNombre de lignes : ", res.json()["parameters"]["rows"])
import json
import requests
url = "https://anapioficeandfire.com/api/"
end_point = "characters"
parametres = {"gender": "Female", "isAlive": True, "culture": "Braavosi"}
response = requests.get(url=url + end_point, params=parametres)
# Teste si le serveur a répondu
if response.status_code != 200:
raise Exception(f"Cannot reach (HTTP {response.status_code}): {response.text}")
print(json.dumps(response.json()))
res.json()
retourne un dictionnaireget()
peut devenir post()
, put()
, etc.
Comment ça fonctionne ?