Aller au contenu
ToolsMinify logo
Outils développeur

Testeur JSONPath

Testez JSONPath en ligne sur une reponse d'API, un webhook ou un fixture sans rien envoyer.

À propos de Testeur JSONPath

Testez JSONPath en ligne sur une reponse d'API, un webhook ou un fixture sans rien envoyer. Collez le document, saisissez l'expression, puis copiez les valeurs extraites ou le chemin normalise RFC 9535 de chaque correspondance. C'est un brouillon prive pour des payloads que vous ne colleriez pas dans un widget SERP - pas une tentative de battre jsonpath.com sur le terme court. Le moteur est un sous-ensemble sans eval : `$`, enfants point/crochets, jokers, slices, descente (`$..author`) et filtres `[?()]` simples. Les selecteurs de script comme `[(@.length-1)]` sont rejetes.

Comment utiliser Testeur JSONPath

  1. Collez du JSON ou chargez un exemple. Utilisez Formater le JSON si le payload arrive minifie.
  2. Saisissez un chemin qui commence par `$`. Extraire un champ avec `$.store.book[*].title`, trouver des valeurs a toute profondeur avec `$..author`, ou lancer un filtre `$[?(@.price < 10)]`.
  3. Lisez le tableau : chemin normalise, type JSON et valeur. Passez a JSON extrait pour un tableau pret a copier.
  4. Copiez le JSON extrait dans un fixture, ou copiez la liste des chemins pour figer les noeuds exacts.
  5. Rien n'est envoye a un serveur. Un JSON invalide indique la ligne et la colonne. Un chemin invalide echoue ferme au lieu de s'executer en JavaScript.

Exemples de Testeur JSONPath

Extraire un champ du JSON

$.store.book[*].title renvoie tous les titres de l'exemple bookstore sous forme de tableau JSON. C'est la requete habituelle 'donne-moi ce champ pour chaque element'.

Descente recursive

$..author parcourt tout le document et collecte chaque auteur, y compris imbriques, sans ecrire le chemin intermediaire.

Exemple de filtre JSONPath

$[?(@.price < 10)] garde les elements du tableau racine moins chers que 10. Sur le bookstore imbrique, utilisez $.store.book[?(@.price < 10)]. @ est l'element courant. Les comparaisons ne coercrent pas : 1 == "1" est false.

Filtrer puis extraire un champ

$.store.book[?(@.price < 10)].title est la forme en deux etapes : garder les livres bon marche, puis copier seulement les titres. [?(@.isbn)] garde les elements qui ont la cle.

Filtre imbrique

$.items[?(@.content.name == 'Candy')].content.id atteint une chaine imbriquee. Placez le filtre sur le tableau a parcourir, puis redescendez dans le champ a extraire.

Questions fréquentes sur Testeur JSONPath

Comment tester JSONPath en ligne sans envoyer mon payload ?
Collez le JSON, saisissez un chemin qui commence par `$` et lisez les correspondances. L'evaluation tourne dans le navigateur avec un parseur sans eval. Le document et l'expression ne quittent pas cet appareil.
Quel exemple de filtre JSONPath puis-je coller ?
$[?(@.price < 10)] sur un tableau racine, ou $.store.book[?(@.price < 10 && @.category == 'fiction')].title pour extraire un champ apres le filtre. @ est l'element courant. Chargez la puce Filtre de prix pour le voir sur des donnees d'exemple.
Comment extraire un champ du JSON avec JSONPath ?
Nommez le champ apres le tableau ou le filtre : $.users[*].email ou $.store.book[?(@.price < 10)].title. La vue JSON extrait copie ces valeurs en tableau. Chaque ligne montre le chemin normalise, par exemple $['store']['book'][0]['title'].
Quelle syntaxe JSONPath ce testeur prend-il en charge ?
Le sous-ensemble courant : `$`, `.name`, `['name']`, `[0]`, `[-1]`, `[*]`, `[start:end:step]`, `$..name` et filtres `[?(...)]` simples. Les noms entre crochets sont quotes. Pas d'eval, pas de jsonpath-plus. Plus etroit qu'un moteur RFC 9535 complet, plus sur pour des payloads colles.
Pourquoi mon JSONPath a-t-il renvoye zero correspondance ?
Une expression valide peut ne rien matcher. Causes frequentes : `$[?(...)]` sur une racine objet (filtrez le tableau), `$` manquant, nom non quote, ou attente d'une coercion JavaScript. Essayez `$..champ` si vous ignorez la profondeur, puis resserrez le chemin.
Qu'est-ce qu'un JSONPath normalise ?
RFC 9535 §2.7 ecrit chaque noeud `$['store']['book'][0]` - noms quotes, index nus, sans raccourci. Chaque correspondance du tableau est une requete singuliere que vous pouvez recoller pour selectionner ce noeud seul.
Est-ce un remplacement de jsonpath.com ?
Non. jsonpath.com et les evaluateurs similaires tiennent le terme court 'jsonpath tester'. Cette page sert a tester une expression contre votre document en prive, extraire un champ et copier des chemins normalises quand le payload ne doit pas quitter le navigateur.