Comparateur JSON
JSON Diff
Compare deux documents JSON sur leur structure, sans tenir compte de l’ordre des clés, et signale les chemins ajoutés, retirés et modifiés.
Compare deux documents JSON structurellement plutôt que comme du texte : une clé réordonnée ou une indentation différente n'est donc pas une différence. La sortie est à la fois un tableau lisible de ce qui a changé et un patch RFC 6902 qui transforme exactement le document de gauche en celui de droite.
Aligne d’abord les deux tableaux, pour qu’une insertion compte pour une modification et non pour cent.
Gauche
Droite
Comment s’en servir
Collez les deux documents
Deux réponses d'API, deux configurations, un avant et un après. La comparaison tourne dans un worker et se met à jour pendant que vous tapez.
Choisissez comment les tableaux sont comparés
C'est le réglage qui décide si le résultat est utile. Aligner met d'abord les deux tableaux en correspondance, si bien qu'insérer un élément est un seul changement. Par index compare position par position, ce qui est juste quand l'ordre est la donnée. Par clé apparie les éléments sur un membre nommé — la réponse quand deux réponses listent les mêmes choses dans un ordre différent.
Décidez si null veut dire absent
Certains sérialiseurs omettent un champ vide, d'autres écrivent `null`. Si vous comparez les sorties de deux piles différentes, activer ceci supprime une page entière de fausses différences.
Prenez le tableau, ou prenez le patch
Le tableau est fait pour être lu ; le patch, pour être appliqué. Les chemins des deux sont des pointeurs RFC 6901 : ils se collent donc dans n'importe quel outil qui parle JSON Patch.
Questions fréquentes
Pourquoi un seul élément inséré dans un tableau apparaît-il comme cent changements ?
Parce que le mode de tableau est Par index : l'élément 1 est comparé à l'élément 2 et tout se décale. Passez à Aligner, qui met d'abord les tableaux en correspondance, ou à Par clé si les éléments ont un identifiant.
Puis-je appliquer le patch ici ?
Non, cette page ne fait que le produire. Mais le patch est exact : l'appliquer au document de gauche donne celui de droite octet pour octet dans le modèle de données, et c'est cet aller-retour que la suite de tests vérifie à chaque changement.
Il dit que les deux documents ne sont pas apparentés.
Ce message apparaît quand la comparaison dépasse vingt mille changements et s'arrête. À ce stade, le diff ne vous apprend plus rien d'utile — vous comparez deux documents différents plutôt que deux versions d'un même document.
L'ordre des clés compte-t-il parfois ?
Pas pour cet outil — les objets JSON ne sont pas ordonnés : deux documents qui ne diffèrent que par l'ordre des clés sont donc signalés comme identiques. Si l'ordre des clés compte pour votre consommateur, ce consommateur s'appuie sur quelque chose que JSON ne promet pas.
À alimenter depuis
Comparateur de textes
Text Diff
Compare deux textes côte à côte ou en flux continu, à la ligne, au mot ou au caractère près.
Formateur et validateur JSON
JSON Formatter & Validator
Met en forme, minifie et valide du JSON en désignant la ligne et la colonne exactes de l’erreur de syntaxe.
Testeur JSONPath
JSONPath Tester
Exécute une expression JSONPath sur un document et met en évidence les nœuds trouvés au fil de la saisie.
Comparateur OpenAPI
OpenAPI Diff
Compare deux documents OpenAPI et sépare les changements cassants des ajouts sans conséquence.
Ensuite
Ces outils acceptent ce que celui-ci produit : le résultat peut y aller directement.
Formateur et validateur JSON
JSON Formatter & Validator
Met en forme, minifie et valide du JSON en désignant la ligne et la colonne exactes de l’erreur de syntaxe.
Testeur JSONPath
JSONPath Tester
Exécute une expression JSONPath sur un document et met en évidence les nœuds trouvés au fil de la saisie.
Comparateur OpenAPI
OpenAPI Diff
Compare deux documents OpenAPI et sépare les changements cassants des ajouts sans conséquence.
Comparateur de textes
Text Diff
Compare deux textes côte à côte ou en flux continu, à la ligne, au mot ou au caractère près.
Encodeur et décodeur Base64
Base64 Encoder & Decoder
Encode et décode en Base64 et en Base64URL, pour du texte comme pour des fichiers, avec un traitement correct de l’UTF-8.
curl vers code
curl to Code
Traduit une commande curl en fetch, axios, requests Python, Go, PHP ou PowerShell.