JSONPath est un langage de requête pour JSON, similaire à XPath pour XML. Il prend en charge les wildcards, les filtres et la descente récursive. JSON Pointer (RFC 6901) est plus simple : il pointe uniquement vers un emplacement spécifique. Utilisez JSONPath lorsque vous devez faire correspondre plusieurs nœuds ou filtrer par conditions.
$ représente la racine du document JSON. Toutes les expressions JSONPath commencent par $. Par exemple, $.store.book[0].title navigue de la racine → store → tableau book → premier élément → propriété title.
Utilisez [*] pour sélectionner tous les éléments. Par exemple, $.users[*].name renvoie la propriété name de chaque objet dans le tableau users. Vous pouvez également utiliser .. pour la descente récursive afin de trouver toutes les clés correspondantes à n'importe quelle profondeur.
Oui, utilisez des expressions de filtre comme $.books[?(@.price < 10)] pour sélectionner les livres moins chers que 10 $. Le symbole @ fait référence à l'élément actuel en cours d'évaluation. Vous pouvez combiner les conditions avec && (et) et || (ou).
Extraction de champs spécifiques à partir de réponses API, navigation dans des fichiers de configuration complexes, test des sorties API dans des tests automatisés et interrogation de grands ensembles de données. JSONPath est également utilisé dans des outils comme Postman, Kubernetes et divers pipelines ETL.