Test JSONPath en ligne

Traitement local
app.jsonpath.view

Vous pouvez aussi injecter des données via #data={"name":"Ada"} ou #url=... Elles sont lues puis retirées de la barre d’adresse.

JSONPath utilise un chemin du type $.store.book[*].title pour extraire des nœuds. Requête en lecture seule, le texte d’origine n’est pas modifié. Utile pour prendre une liste ou un champ imbriqué dans une grosse réponse. Pour une assertion de test d’API ou extraire un tableau d’un journal, plus court que d’écrire des accès imbriqués à la main.

Extraction par chemin

Prend en charge $ racine, .. récursif, tranches et filtres. Le joker [*] extrait d’un coup le même champ de chaque élément d’un tableau.

Des modèles courants sont fournis : choisissez-en un, puis adaptez le chemin.

Déboguer une expression

Modifiez une ligne de chemin et voyez tout de suite le résultat, plus vite qu’un script temporaire. Expression invalide ou sans correspondance : message explicite.

Copiez un chemin depuis la vue arbre pour limiter les fautes de frappe.

Ensuite

Le tableau extrait peut aller vers CSV ou génération de types. Une fois le chemin confirmé, copiez-le dans un test ou un script jq.

Cette page ne modifie pas l’original, adaptée à un diagnostic en lecture seule.

Exemple

Données
{
  "store": {
    "book": [
      { "title": "Sayings of the Century", "price": 8.95 },
      { "title": "Slightly Bad", "price": 12.99 }
    ]
  }
}
Expression et résultat
$.store.book[*].title

["Sayings of the Century", "Slightly Bad"]
Est-ce comparable aux sélecteurs CSS ?

Même idée : décrire « quelle partie » par un chemin, plutôt que des boucles d’accès à la main.

Comment écrire un filtre ?

Une forme courante est $..book[?(@.price<10)] ce type de condition. La syntaxe suit le moteur de cette page.

Pourquoi aucun résultat ?

Le plus souvent, le chemin ne correspond pas à la structure réelle. Vérifiez noms de clés, indices de tableau, objet vs tableau dans la vue arbre.

Le JSON d’origine est-il modifié ?

Non. Seule la liste des valeurs correspondantes est produite.

Flux recommandé

  1. Collez la réponse complète, commencez par $ avec un chemin peu profond, puis approfondissez.
  2. Remplissez une expression courante via un modèle, cliquez sur « Exécuter » et voyez le nombre de correspondances.
  3. Une fois le résultat confirmé, copiez l’expression dans un test ou un script.
  4. Si le tableau d’objets correspondant doit aller en tableur, passez à CSV / Excel.

Les détails JSONPath varient un peu selon les bibliothèques. Prenez l’expression qui marche ici, puis alignez l’implémentation de votre langage.