Aller au contenu
SPCX Tools

Testeur JSONPath

Évaluez et testez instantanément des expressions JSONPath sur vos données JSON directement dans votre navigateur.

Fonctionne en local — vos fichiers ne quittent pas votre appareil

Chargement de l’outil…

Comment utiliser : Testeur JSONPath

  1. 1Collez ou saisissez vos données JSON dans le panneau de gauche, ou cliquez sur "Exemple" pour charger des données d'exemple.
  2. 2Saisissez votre expression JSONPath dans le champ de saisie en haut de la page.
  3. 3Cliquez sur l'un des boutons d'exemples rapides sous le champ de saisie pour voir des modèles de requêtes courants en action.
  4. 4Consultez les résultats correspondants, le nombre total de correspondances et les chemins exacts des éléments trouvés dans le panneau de droite.

Un testeur JSONPath rapide et privé

Lorsque vous travaillez avec des données JSON volumineuses ou profondément imbriquées, extraire l'information exacte dont vous avez besoin peut s'avérer fastidieux. Ce testeur JSONPath offre un environnement en temps réel pour écrire, tester et déboguer vos requêtes. Au fur et à mesure que vous tapez votre expression, l'outil l'évalue instantanément sur vos données JSON, affichant à la fois les valeurs extraites et les chemins exacts où elles se trouvent.

Comme il s'agit d'un évaluateur JSONPath entièrement côté client, tout le traitement s'effectue localement sur votre appareil. Vos données JSON ne sont jamais envoyées à un serveur. Vous pouvez donc coller en toute sécurité des payloads d'API de production, des exports de bases de données ou des fichiers de configuration sensibles sans craindre les fuites de données ou les violations de confidentialité.

Fonctionnalités clés pour les développeurs

  • Évaluation en temps réel : Les résultats se mettent à jour immédiatement lorsque vous modifiez vos données JSON ou votre requête. Inutile de cliquer sur un bouton ou d'attendre la réponse d'un serveur.
  • Parsing sécurisé : L'outil utilise un moteur d'évaluation sécurisé (eval: 'safe') pour traiter vos requêtes, empêchant l'exécution de code malveillant tout en conservant un support complet des expressions de filtrage complexes.
  • Extraction des chemins : En plus d'afficher les valeurs trouvées, l'outil génère les chemins absolus pour chaque correspondance. C'est particulièrement utile si vous devez ensuite mettre à jour ces nœuds spécifiques de manière programmatique.
  • Exemples intégrés : Si vous ne connaissez pas encore la syntaxe, vous pouvez charger un jeu de données d'exemple (une librairie) et tester plusieurs expressions pré-écrites pour comprendre le fonctionnement des différents opérateurs.

Comment écrire une requête JSONPath

JSONPath utilise une syntaxe spécifique pour naviguer dans les objets et tableaux JSON. Si vous souhaitez tester la logique d'une expression JSONPath, il est utile de comprendre les opérateurs fondamentaux :

  • $ représente l'objet ou le tableau racine. Toute expression JSONPath absolue commence par ce symbole.
  • @ représente le nœud en cours de traitement. Il est principalement utilisé dans les expressions de filtrage.
  • . ou [] sont des opérateurs enfants utilisés pour sélectionner des propriétés. Par exemple, $.store.book et $['store']['book'] font la même chose.
  • .. est l'opérateur de descente récursive. Il recherche une clé spécifique n'importe où dans l'arborescence JSON, quelle que soit sa profondeur (par ex., $..price trouve tous les prix).
  • * est un caractère générique qui correspond à tous les éléments d'un objet ou d'un tableau. Par exemple, $.store.* sélectionne tout ce qui se trouve directement dans l'objet store.
  • [?()] applique une expression de filtrage. Vous pouvez y utiliser les opérateurs logiques standards. Par exemple, $..book[?(@.author == 'Nigel Rees')] trouvera tous les livres écrits par cet auteur spécifique.
  • [start:end:step] vous permet de découper des tableaux, comme en Python. $.store.book[-1:] sélectionne le dernier livre du tableau.

Cas d'usage courants

Développement et débogage d'API. Les API REST et GraphQL modernes renvoient souvent des payloads JSON volumineux. Au lieu d'écrire du code temporaire pour analyser et inspecter la réponse, vous pouvez coller le payload dans cet outil JSONPath en ligne pour vérifier rapidement que la structure des données est correcte et que vos requêtes extraient les bons champs.

Tests automatisés. Lors de l'écriture de tests d'intégration ou de bout en bout (avec des outils comme Postman, RestAssured ou Playwright), vous devez souvent vous assurer que des valeurs spécifiques existent dans une réponse JSON. Utiliser un testeur jsonpath vous aide à perfectionner votre requête avant de la coder en dur dans votre suite de tests.

Extraction et transformation de données. Si vous migrez des données ou concevez des pipelines ETL (Extract, Transform, Load), vous devez souvent isoler des tableaux ou des objets spécifiques. Vous pouvez utiliser cet outil pour trouver les chemins exacts nécessaires à l'extraction de vos données cibles. Si vos données sources sont en XML, vous pouvez d'abord utiliser le convertisseur XML vers JSON, et si vous avez besoin de formater des données minifiées avant de les inspecter, le Formateur JSON peut vous aider. Vous pouvez également utiliser l'outil Comparateur JSON pour voir comment vos données évoluent avant et après les transformations.

Questions fréquentes

Qu'est-ce que JSONPath ?
JSONPath est un langage de requête pour les données JSON, semblable à XPath pour XML. Il permet de sélectionner et d'extraire des nœuds, des tableaux ou des valeurs spécifiques depuis une structure JSON complexe à l'aide d'une expression compacte.
Mes données JSON sont-elles sécurisées ?
Oui. Cet outil fonctionne entièrement en local dans votre navigateur. Vos données JSON et vos requêtes ne sont jamais envoyées sur un serveur, ce qui le rend parfaitement sûr pour tester des réponses d'API sensibles, des fichiers de configuration ou des données confidentielles.
Comment filtrer les données selon une condition spécifique ?
Vous pouvez utiliser une expression de filtre avec la syntaxe [?(@.property == 'value')]. Par exemple, $.store.book[?(@.price < 10)] renverra tous les livres du tableau store ayant un prix strictement inférieur à 10.
Puis-je voir l'emplacement exact des éléments correspondants ?
Oui. Sous les résultats principaux, se trouve une section déroulante "Paths". En l'ouvrant, vous afficherez le JSONPath absolu exact pour chaque élément trouvé dans vos résultats.
Pourquoi est-ce que j'obtiens une erreur "Invalid JSON" ?
Le format JSON exige une syntaxe stricte. Assurez-vous que toutes vos clés et valeurs textuelles sont entourées de guillemets doubles (et non simples), et qu'il n'y a aucune virgule finale après le dernier élément d'un objet ou d'un tableau.
Quelle spécification JSONPath cet outil utilise-t-il ?
Cet outil utilise la célèbre bibliothèque jsonpath-plus, qui prend entièrement en charge la spécification JSONPath d'origine tout en ajoutant des fonctionnalités étendues et sécurisées pour des requêtes plus complexes. Il évalue les expressions en toute sécurité sans utiliser la fonction JavaScript eval().