PaliSkill
Python avancé

Leçon 5 / 9 — Chapitre 7: Requêtes HTTP et APIs

requests.post() : envoyer des données

requests.post() envoie une requête de type POST, destinée à créer ou envoyer des données au serveur — contrairement à GET, qui ne fait que les récupérer.

import requests

nouveau_produit = {"nom": "farine", "prix": 4, "stock": 12}

reponse = requests.post(
    "https://api.exemple.com/produits",
    json=nouveau_produit,
)
print(reponse.status_code)

json=nouveau_produit convertit automatiquement le dictionnaire Python en JSON, et l'envoie dans le corps de la requête — l'équivalent de json.dumps() (vu dans Python Intermédiaire), effectué automatiquement par requests.

Un code de statut 201 (plutôt que 200) signifie généralement "ressource créée avec succès" — une convention fréquente pour une réponse à un POST qui a créé quelque chose de nouveau.

# suppose : status_code vaut 201
if reponse.status_code == 201:
    produit_cree = reponse.json()
    print("Cree avec l'identifiant :", produit_cree["id"])

De nombreuses API renvoient, en réponse à un POST réussi, la ressource créée elle-même (souvent avec un nouvel identifiant assigné par le serveur) — récupérable avec .json(), exactement comme pour un GET.

À vous de jouer : écrivez un appel requests.post() avec json= contenant un dictionnaire de votre choix, et affichez le status_code de la réponse.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 87 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès