[Guide] Que signifie JSONPath Postman ?

Cet article explore JSONPath de Postman. Naviguez et extrayez facilement des données JSON, ciblez des éléments et filtrez les résultats.

Louis Dupont

Louis Dupont

15 September 2025

[Guide] Que signifie JSONPath Postman ?

Les tests d'API efficaces reposent sur l'extraction et la manipulation efficaces des données des réponses JSON. Postman, une plateforme de développement d'API populaire, permet aux utilisateurs d'utiliser JSONPath, un langage de requête puissant spécialement conçu pour naviguer dans les structures JSON.

💡
Le développement web et d'applications peut impliquer une variété de piles technologiques, ce qui signifie que les outils doivent être capables de les prendre en charge !

Si vous recherchez un outil d'API pour poursuivre le développement de votre application ou de votre API, vous devriez sérieusement envisager d'utiliser Apidog - une solution unique à tous vos problèmes d'API.

Si vous souhaitez en savoir plus sur Apidog, cliquez sur le bouton ci-dessous !
button

Cet article explore le monde de Postman JSONPath, vous donnant les compétences nécessaires pour libérer tout le potentiel de vos interactions API.

Qu'est-ce que JSONPath ?

JSON (JavaScript Object Notation) est un format de données omniprésent pour l'échange d'informations entre les API et les applications. Bien que sa nature lisible par l'homme soit un plus, les réponses JSON complexes avec des objets et des tableaux imbriqués peuvent être décourageantes à naviguer. C'est là que JSONPath entre en jeu – un langage de requête concis spécialement conçu pour parcourir et extraire des données des structures JSON.

Les expressions JSONPath ressemblent à une feuille de route, vous guidant à travers la hiérarchie JSON. Voici comment cela fonctionne :

Élément racine

Les éléments racines sont représentés par $, il signifie l'ensemble du document JSON.

Nœuds enfants

La notation pointée (.) ou la notation entre crochets ([]) est utilisée pour accéder aux nœuds enfants.

Tableaux

Des crochets avec un index accèdent à des éléments spécifiques : $.items[1] sélectionne le deuxième élément du tableau "items". Les caractères génériques (*) peuvent être utilisés pour cibler tous les éléments : $.products[*] sélectionne tous les éléments du tableau "products".

Filtres

Les filtres vous permettent de réduire les résultats en fonction de conditions. Par exemple, $..[?(@.price > 100)] sélectionne tous les objets dans la structure JSON (indiqué par ..) où le "price" de la propriété est supérieur à 100.

Comment Postman fonctionne-t-il avec JSONPath ?

Scripts de test

Les expressions JSONPath peuvent être intégrées aux scripts de test de Postman pour extraire des données spécifiques des réponses et effectuer des assertions.

Collections

JSONPath peut être utilisé dans les variables de collection pour définir dynamiquement les paramètres de requête en fonction des réponses précédentes. Cela permet de créer des cas de test réutilisables et basés sur les données.

Scripts de pré-requête

Les expressions JSONPath peuvent être utilisées dans les scripts de pré-requête pour manipuler les données avant d'envoyer une requête.

Exemples de requêtes JSONPath

Ce sont quelques exemples de requêtes JSONPath qui peuvent être implémentées dans la section de pré-requête de Postman.

postman pre-request script

Exemple 1 - Logique conditionnelle avec la fonction if

Imaginez une réponse avec une propriété "isActive" pour les utilisateurs. Vous souhaitez extraire leurs noms, mais uniquement s'ils sont actifs.

$.users[*].if(@.isActive, $.name, "Inactive")

Ce code utilise la fonction if. Si l'objet utilisateur actuel a une propriété "isActive" définie sur true, il extrait son nom. Sinon, il renvoie la chaîne "Inactive".

Exemple 2 - Recherche des valeurs minimum/maximum

Disons que vous avez un tableau "orders" avec une propriété "amount" pour chaque commande. Vous souhaitez trouver la commande avec le montant minimum et maximum.

$..[?(@.type == "order")].amount.min()  // Minimum amount
$..[?(@.type == "order")].amount.max()  // Maximum amount

Ces requêtes exploitent les fonctions min() et max() pour identifier les valeurs respectives dans la propriété "amount" pour toutes les commandes.

Exemple 3 - Aplatissement des tableaux imbriqués

Postman ne prend pas en charge nativement les tableaux imbriqués. Si vous avez une réponse avec des catégories de produits imbriquées, vous souhaiterez peut-être les aplatir en une seule liste.

$.categories..[*] | flatten

Ce code utilise l'opérateur de pipeline (|) et la fonction flatten. Il traverse tous les éléments imbriqués dans la structure "categories" et les aplatit en un tableau à un seul niveau.

Exemple 4 - Travailler avec des dates et des nombres

JSONPath peut manipuler les dates et les nombres. Disons que vous avez un horodatage "createdAt" pour les utilisateurs. Vous souhaitez le formater dans un format de date spécifique.

pm.response.json().users[*].createdAt.toString(pm.timestampFormat("YYYY-MM-DD"))  // Assuming a pre-defined format function

Cet exemple combine JSONPath avec une fonction de script Postman (pm.timestampFormat) pour formater l'horodatage "createdAt" dans le format souhaité (YYYY-MM-DD) dans un script de pré-requête.

Exemple 5 - Combinaison de JSONPath avec les variables Postman

Vous pouvez contrôler dynamiquement les requêtes JSONPath à l'aide des variables Postman. Supposons que vous souhaitiez filtrer les utilisateurs en fonction d'un ID d'utilisateur stocké dans une variable.

$.users[?(@.id == pm.variables.get("selectedUserId"))]

Ici, le pm.variables.get("selectedUserId") récupère la valeur stockée dans la variable "selectedUserId" et l'utilise dans le filtre JSONPath pour la sélection dynamique des utilisateurs.

Apidog - Configurez rapidement des scripts de pré-processeur

Apidog est un outil de développement d'API complet qui peut être une alternative parfaite à Postman pour les développeurs.

apidog mock interface
button

Avec des outils complets pour l'ensemble du cycle de vie de l'API, les développeurs peuvent créer, tester, simuler et documenter les API en seulement Apidog !

apidog features

Définition de scripts d'API personnalisés à l'aide d'Apidog

apidog script pre processor

Apidog fournit aux développeurs des fonctionnalités de génération de code pour les scripts personnalisés. Vous pouvez obtenir et définir des variables d'environnement et locales.

apidog post processor

Vous pouvez également personnaliser la section post-processeur de votre API, en spécifiant l'expression JSONPath et l'objet cible.

button

Création de nouvelles API avec Apidog

Apidog offre aux utilisateurs un degré élevé de flexibilité de conception dans le processus de création d'API. Cela permet le développement d'API qui correspondent précisément aux exigences fonctionnelles de votre application ou aux besoins spécifiques de ses utilisateurs prévus.

button
new api apidog

Commencez par appuyer sur le bouton New API, comme indiqué dans l'image ci-dessus.

add details new api apidog

Après avoir établi les fonctionnalités de base de votre API, il est maintenant essentiel de définir méticuleusement ses caractéristiques opérationnelles. Cette section décrit les considérations clés impliquées dans ce processus :

Pour vous assurer que vous créez des API efficaces, pensez à consulter ces articles utiles sur les meilleures pratiques en matière d'API REST.

button

Conclusion

L'intégration de JSONPath par Postman déverrouille un outil puissant et polyvalent pour naviguer et manipuler les données dans les réponses JSON. En maîtrisant les expressions JSONPath, vous pouvez extraire efficacement des valeurs spécifiques, filtrer les résultats en fonction de conditions et même effectuer des transformations de données complexes. Cela vous permet de rationaliser les flux de travail de test d'API, d'obtenir des informations plus approfondies à partir des réponses et de créer des cas de test robustes qui garantissent la fonctionnalité et la fiabilité de vos API.

De plus, l'intégration transparente de JSONPath avec les capacités de script de Postman ouvre la voie à des cas d'utilisation encore plus avancés. Vous pouvez contrôler dynamiquement les requêtes à l'aide de variables, exploiter des fonctions pour une manipulation sophistiquée des données et combiner JSONPath avec des scripts de pré-requête ou des scripts de test pour automatiser des tâches complexes. En adoptant la puissance de JSONPath dans Postman, vous élevez votre processus de développement d'API à un tout nouveau niveau d'efficacité et d'efficacité.

Explore more

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

L'IA en expansion rapide. Fathom-R1-14B (14,8 milliards de paramètres) excelle en raisonnement mathématique et général, conçu par Fractal AI Research.

5 June 2025

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Découvrez Mistral Code, l'IA d'aide au code la plus personnalisable pour les entreprises.

5 June 2025

Comment Claude Code transforme le codage de l'IA en 2026

Comment Claude Code transforme le codage de l'IA en 2026

Découvrez Claude Code en 2026 : codage IA révolutionné. Fonctionnalités, démo, et pourquoi il gagne du terrain après Windsurf d'Anthropic. Indispensable !

5 June 2025

Pratiquez le Design-first d'API dans Apidog

Découvrez une manière plus simple de créer et utiliser des API