JSON

Testeur JSONPath

Test d'expressions JSONPath sur des données JSON réelles — aperçu instantané des valeurs trouvées et de leurs chemins.

$ — racine · .key / ['key'] — propriété · .. — recherche récursive · [*] — tous les éléments · [0,1] — index · [0:2] — tranche · [?(@.price<10)] — filtre

JSONPath lets you reach into nested JSON values the way XPath does for XML — a compact path string like $.users[0].email instead of manually walking the structure. This tool lets you test an expression against real data and see the result instantly.

How to use it

Common uses

Things to keep in mind

There's no single official JSONPath standard — the basic syntax (dots, brackets, *) is supported the same way everywhere, but filters and more advanced expressions differ between libraries.

Array indexing in JSONPath starts at zero, like in most programming languages — [0] means the first element.

Article sur cet outil: JSONPath : interroger des données JSON sans les parcourir à la main

Questions fréquentes

Qu'est-ce que JSONPath et à quoi ça sert ?

JSONPath est un langage de requête pour extraire des valeurs d'un document JSON, un peu comme XPath pour XML mais avec sa propre syntaxe. $ désigne la racine, .key ou ['key'] accède à une propriété, [*] sélectionne tous les éléments d'un tableau.

Puis-je tester du JSON sensible sans risque ?

Oui, l'évaluation des expressions se fait entièrement dans le navigateur, en JavaScript — rien n'est envoyé à un serveur.

Quelle est la différence entre .key et ..key ?

$.store.book cherche book directement sous store, tandis que $..book (recherche récursive) trouve book à n'importe quelle profondeur dans le document, ce qui peut renvoyer bien plus de résultats que prévu si la clé existe à plusieurs niveaux.

Comment accéder à une clé contenant un point ou une espace ?

Via la notation entre crochets et guillemets : $['user.name'] au lieu de $.user.name — sinon l'analyseur interprète le point comme un séparateur d'imbrication plutôt que comme une partie du nom de la clé.

Existe-t-il une norme officielle unique pour JSONPath ?

Non. La syntaxe de base (points, crochets, astérisque) est prise en charge de façon quasi identique partout, mais les filtres et expressions avancées diffèrent selon les bibliothèques — vérifiez la compatibilité pour les expressions complexes.

Articles : JSON