Formateur et Validateur JSON en Ligne
Formatez, validez, explorez et analysez votre JSON dans votre navigateur.
Qu’est-ce que le JSON ?
Le JSON est le format texte que la plupart des API web, des fichiers de configuration et des chaînes de journalisation utilisent pour échanger des données structurées. Un document se compose d’objets (paires "clé": valeur entre accolades), de tableaux (listes ordonnées entre crochets), de chaînes entre guillemets doubles, de nombres, de true, false et null. Cet outil vérifie qu’un document respecte ces règles, le réécrit pour le rendre lisible ou compact et vous aide à l’inspecter, le convertir et l’interroger.
Comment utiliser le formateur et validateur JSON
- Collez votre JSON dans la zone de saisie, ou cliquez sur Charger Exemple pour partir d’un document d’exemple.
- Cliquez sur Formater JSON pour le réindenter avec 2 espaces, 4 espaces ou des tabulations, sur Minifier JSON pour supprimer tous les espaces facultatifs, ou sur Valider JSON pour vérifier la syntaxe sans rien modifier. Si la saisie est invalide, l’erreur de l’analyseur de votre navigateur s’affiche pour vous aider à trouver le problème.
- Ouvrez Explorer pour parcourir le document sous forme d’arbre avec recherche et copier le chemin ou la valeur de n’importe quel nœud, ou Statistiques pour voir le nombre d’objets, de tableaux, de clés et de valeurs, la profondeur d’imbrication maximale et la taille.
- Ouvrez Transformer pour convertir le document en CSV, YAML, XML, interfaces TypeScript ou lignes séparées par des tabulations pour un tableur, ou Avancé pour exécuter des requêtes JSONPath/JMESPath simples, le comparer à un second document JSON ou masquer les valeurs qui semblent sensibles.
Notes techniques
- La validation ne vérifie que la syntaxe JSON : elle ne contrôle pas vos données par rapport à un schéma. Toute valeur JSON valide est acceptée au niveau supérieur, y compris un simple nombre, une chaîne, true, false ou null. Les commentaires, les virgules finales et les chaînes entre guillemets simples ne sont pas du JSON valide et sont signalés comme des erreurs.
- Formater et Minifier convertissent votre JSON en valeurs JavaScript puis les réécrivent : le résultat est une resérialisation des données, et non une copie retouchée de votre texte. Certains changements ne touchent que l’écriture — par exemple, les nombres sont écrits sous leur forme la plus courte, si bien que 1.0 devient 1 et 1e2 devient 100. D’autres modifient les données elles-mêmes : si un objet répète une clé, seule la dernière valeur est conservée ; les nombres que JavaScript ne peut pas représenter exactement peuvent changer, y compris les entiers supérieurs à 9007199254740991 et les nombres décimaux de haute précision ; et les nombres trop grands pour JavaScript, comme 1e400, deviennent null. Si les valeurs numériques exactes ou les clés en double comptent, vérifiez le résultat avant de remplacer vos données d’origine.
- Les requêtes JSONPath et JMESPath d’Avancé ne prennent en charge qu’un sous-ensemble limité : accès aux propriétés (.cle), index de tableau ([n]) et jokers ([*] en JSONPath, [] en JMESPath). Les filtres, la descente récursive (..), les tranches et les fonctions ne sont pas pris en charge ; une expression écrite pour un autre outil peut donc ne rien renvoyer ou renvoyer un résultat différent.
- L’Anonymiseur de Données fonctionne par motifs. Il remplace les valeurs texte qui sont entièrement une adresse e-mail, un numéro de téléphone ou une adresse IPv4, ainsi que les valeurs des clés dont le nom évoque un secret, comme password, secret, token ou api_key. Comme il ne reconnaît que des motifs, il peut laisser passer des données sensibles — des noms, des adresses postales ou un e-mail au milieu d’une phrase, par exemple —, alors vérifiez le résultat anonymisé avant de le partager.
- Le CSV et les lignes pour tableur de l’option Excel transforment un tableau d’objets en une ligne par objet, ou un objet unique en une seule ligne, avec une colonne pour chaque clé rencontrée. Les objets imbriqués deviennent des noms de colonnes avec des points, comme address.city, et les tableaux sont écrits dans une seule cellule sous forme de texte JSON. L’option Excel produit actuellement du texte séparé par des tabulations à coller dans un tableur, et non un fichier .xlsx.
Foire Aux Questions
Le formatage ou la minification peuvent-ils modifier mes données ?+
Ils ne modifient pas volontairement vos données, mais ils les convertissent en valeurs JavaScript puis les réécrivent. Une clé répétée dans le même objet ne garde que sa dernière valeur, et les nombres que JavaScript ne peut pas représenter exactement peuvent changer : les entiers supérieurs à 9007199254740991 (comme certains identifiants sur 64 bits) et les nombres décimaux comportant plus de chiffres significatifs que JavaScript n’en conserve sont arrondis, et les nombres trop grands pour JavaScript, comme 1e400, deviennent null. Si les valeurs numériques exactes ou les clés en double comptent, vérifiez le résultat avant de remplacer vos données d’origine ; si vous produisez vous-même le JSON, transmettre ces nombres sous forme de chaînes évite le problème.
Quelle est la différence entre formater et minifier du JSON ?+
Le formatage ajoute des retours à la ligne et de l’indentation pour rendre le JSON lisible. La minification supprime les espaces inutiles pour réduire la taille.
Pourquoi mon JSON n’est-il pas valide ?+
Les causes courantes sont les commentaires (// ou /* */), une virgule après le dernier élément d’un objet ou d’un tableau, des clés ou chaînes entre guillemets simples ou sans guillemets, des retours à la ligne ou des guillemets doubles non échappés dans une chaîne, et des valeurs que le JSON ne définit pas, comme undefined ou NaN. Le panneau d’erreur affiche le message de l’analyseur de votre navigateur ; sa formulation, et la précision avec laquelle il localise le problème, varient d’un navigateur à l’autre.
Mes données JSON sont-elles envoyées à un serveur ?+
Non. Tout le traitement s’effectue à 100% localement dans votre navigateur web.
Le JSON est-il sensible à la casse ?+
Oui. Les noms de clés et valeurs littérales en JSON sont sensibles à la casse. Par exemple, true, false et null doivent être en minuscules.
