Encoders & Utilities

Formateur JSON

Valide, formate et minifie JSON avec coloration syntaxique.

À propos de cet outil

JSON Formatter analyse n'importe quel document JSON, le valide par rapport à la grammaire RFC 8259, et le reformate avec une indentation cohérente et une mise en évidence de la syntaxe. Collez la sortie d'une réponse API, un fichier de configuration ou une ligne de journal — le JSON invalide reçoit une erreur inline avec la ligne et la colonne exactes de l'échec d'analyse ; le JSON valide est joliment imprimé avec des objets et des tableaux pliables afin que vous puissiez naviguer dans de grandes structures sans défiler indéfiniment.

Au-delà de l'impression jolie, l'outil peut minifier le JSON (supprimer chaque octet évitable pour le transit), trier les clés alphabétiquement (utile pour comparer deux configurations), échapper toute la valeur comme un JSON-dans-une-chaîne (pour l'intégrer dans une autre charge utile JSON) et déséchapper en arrière. Tout s'exécute localement dans votre navigateur — aucune charge utile ne traverse jamais le réseau, c'est donc sûr pour les réponses API qui contiennent des jetons ou des PII.

Quand utiliser cet outil

  • Débogage d'API. Déposez une réponse curl dans le formateur pour rendre lisible un mur de JSON compact.
  • Diffs de fichiers de configuration. Triez les deux fichiers par clé, puis comparez — un ordre de clés aléatoire provoque des diffs bruyants autrement.
  • Validation avant déploiement. Une faute de frappe dans un YAML CI se cache souvent comme JSON malformé à l'intérieur d'une chaîne ; collez le JSON intérieur pour confirmer qu'il s'analyse.
  • Intégration de JSON dans JSON. Auto-échappez une charge utile afin qu'elle puisse voyager comme un champ de chaîne dans un autre document JSON (pratique pour les corps de webhook dans les modèles).

Ce que notre validateur attrape

RFC 8259 interdit les virgules finales, les commentaires et les clés non quotées — commodités courantes de saveur JS. Nous honorons strictement la spécification afin que le JSON que vous copiez de notre formateur soit valide partout. Si vous devez formater JSON5 ou JSONC (avec commentaires, virgules finales), faites une passe préliminaire de "suppression des extras" — de nombreux éditeurs le font automatiquement lors de l'enregistrement en .json.

Questions fréquentes

Pourquoi mon JSON avec des virgules finales échoue-t-il à s'analyser ?

Parce que la RFC 8259 les interdit. {"a": 1,} est valide en JavaScript mais JSON invalide. Il en va de même pour les chaînes entre guillemets simples, les clés non quotées et les commentaires // — ce sont des commodités JS que la spécification JSON a délibérément exclues pour la portabilité interlangue. Si vous avez besoin d'un format détendu, regardez JSON5 ou JSONC ; pour une interopérabilité stricte, notre formateur a raison de les rejeter.

Puis-je formater JSON Lines (NDJSON) ?

Pas directement — NDJSON (un objet JSON par ligne) est son propre format et nous traitons le collage entier comme un seul document. Pour joliment imprimer un fichier NDJSON, divisez-le en lignes d'abord et formatez chaque ligne individuellement. Le résultat n'est alors plus NDJSON (car l'impression jolie ajoute des sauts de ligne), c'est donc pour l'inspection uniquement — n'écrasez jamais le fichier original avec la sortie joliment imprimée.

L'outil change-t-il l'ordre de mes clés ?

Uniquement si vous le demandez. Par défaut, le formateur préserve l'ordre d'insertion. La bascule "Trier les clés" alphabétise chaque objet à chaque profondeur — utile pour comparer deux configurations, mais cela change la disposition du document. Pour une sortie conviviale pour l'humain qui respecte le regroupement logique, laissez le tri désactivé ; pour la comparaison machine, activez-le.

Quelle taille peut avoir l'entrée ?

Nous avons testé jusqu'à ~50 Mo sur un ordinateur portable moderne. Plus grand que cela et l'analyse du navigateur ralentit de manière notable — à 100 Mo+, de nombreux navigateurs expirent la tâche JavaScript. Pour de très grands dumps JSON, utilisez un analyseur en streaming en ligne de commande (jq, fx, jless) ; pour le cas typique de "réponse API qui s'est avérée être de 8 Mo", le navigateur le gère très bien.