Étape 2 sur 3 · environ 20 min

Répétez l’appel et contrôlez ce qu’Odoo renvoie

Une réponse réussie se vérifie avec des éléments visibles : le statut, le type de contenu et le corps JSON attendu.

1. Rejouez la même requête

Relancez l’appel avec -i pour conserver le statut et le type de contenu dans votre observation.

Linux ou macOS
curl -i http://127.0.0.1:8069/training/api/notes
PowerShell sous Windows
curl.exe -i http://127.0.0.1:8069/training/api/notes

Chaque exécution envoie une nouvelle requête GET. cURL l’envoie au serveur ; Odoo choisit /training/api/notes et renvoie le JSON de cette route.

2. Séparez le statut du corps

Commencez par la première ligne. HTTP/1.1 200 OK indique que la requête a réussi. Repérez ensuite Content-Type: application/json : Odoo annonce que le corps contient du JSON.

Une ligne vide sépare ces informations du corps. Dans ce corps, vérifiez les éléments suivants :

  • l’objet racine contient d’abord notes, puis count ;
  • les titres correspondent aux enregistrements visibles dans Notes de formation → Notes ;
  • chaque objet contient seulement id, title et body ;
  • count correspond au nombre d’objets renvoyés, dans la limite des vingt notes prévues par la route.
Exemple de corps · vos valeurs peuvent différer
{
  "notes": [
    {
      "id": 12,
      "title": "Observer avant de modifier",
      "body": "La même note vient maintenant de l’ORM."
    }
  ],
  "count": 1
}

3. Affichez seulement le corps si nécessaire

Retirez -i lorsque vous avez déjà vérifié le statut et que vous voulez vous concentrer sur le JSON.

Linux ou macOS
curl http://127.0.0.1:8069/training/api/notes
PowerShell sous Windows
curl.exe http://127.0.0.1:8069/training/api/notes

cURL peut afficher le JSON sur une seule ligne. Cela ne change ni les clés ni les valeurs de la réponse.

4. Diagnostiquez les problèmes locaux les plus probables

  • cURL ne peut pas se connecter : vérifiez que le processus Odoo fonctionne et que l’instance du cours écoute bien sur le port 8069. Consultez ses journaux, puis réessayez.
  • Vous obtenez 404 Not Found : recopiez exactement le chemin /training/api/notes. Un chemin différent ne correspond pas à la route du cours.
  • La route reste introuvable ou une ancienne réponse apparaît : vérifiez que controllers/__init__.py contient bien from . import notes_api. Redémarrez ensuite Odoo et attendez que ses journaux indiquent qu’il est prêt.
Restez sur la requête de référence

Ne corrigez pas ce test en ajoutant un en-tête ou une clé. Cette section vérifie volontairement la route anonyme. L’authentification arrive dans la section suivante.

Résultat attendu

Vous pouvez répéter l’appel, retrouver 200 OK, reconnaître le corps JSON et relier un échec local au processus Odoo, au port, au chemin ou au rechargement du contrôleur.