Générateur et applicateur de JSON Patch

Générez un JSON Patch RFC 6902 entre deux documents, appliquez un patch à une source, ou exécutez un merge patch RFC 7386 — entièrement dans votre navigateur.

Le générateur JSON Patch s'exécute entièrement dans votre navigateur. Les documents et patches que vous collez sont comparés et appliqués sur votre appareil et ne sont jamais téléversés vers ArrayKit.

Ouvrir l'outil JSON Diff

À propos de Générateur JSON Patch

Le générateur JSON Patch transforme la différence entre deux documents JSON en un tableau d'opérations RFC 6902 propre — les étapes add, remove, replace, move et copy qui transforment une source en cible. Passez au mode Appliquer pour exécuter un patch sur un document source et voir le résultat exact, chaque opération étant validée pour qu'une opération incorrecte ou un test échoué soit détecté plutôt qu'ignoré silencieusement. Un troisième mode applique les JSON Merge Patches RFC 7386, où une valeur null supprime une clé et les objets fusionnent clé par clé. Il est conçu pour les développeurs qui câblent des points de terminaison PATCH, synchronisent de la configuration, ou passent en revue des changements d'API. Votre source, votre cible et votre patch sont traités sur votre appareil et ne quittent jamais le navigateur.

Fonctionnalités

Comment utiliser Générateur JSON Patch

  1. Choisissez Générer pour comparer deux documents, Appliquer un patch pour exécuter un patch RFC 6902, ou Merge patch pour la RFC 7386
  2. Collez votre JSON source à gauche
  3. Collez le document cible, le tableau de patch ou le merge patch à droite
  4. Lisez les opérations générées ou le résultat corrigé, puis copiez-le ou téléchargez-le

Exemple

Entrée

source: {"active":true,"roles":["admin"]}
target: {"active":false,"roles":["admin","editor"]}

Sortie

[
  { "op": "replace", "path": "/active", "value": false },
  { "op": "add", "path": "/roles/1", "value": "editor" }
]

Générer produit les opérations RFC 6902 qui transforment la source en cible.

Erreurs courantes et dépannage

Foire aux questions

Qu'est-ce qu'un JSON Patch RFC 6902 ?
La RFC 6902 est un format qui décrit les modifications d'un document JSON comme un tableau ordonné d'opérations — add, remove, replace, move, copy et test — chacune ciblant un chemin JSON Pointer. Appliquer le tableau à la source produit la cible.
En quoi le JSON Merge Patch (RFC 7386) diffère-t-il du JSON Patch (RFC 6902) ?
Un merge patch est lui-même un objet JSON qui reflète la cible : les clés présentes sont définies, une valeur null supprime une clé, et les tableaux et scalaires remplacent en bloc. Il est plus simple mais ne peut pas déplacer de valeurs ni modifier des éléments de tableau individuels comme le font les opérations RFC 6902.
Comment générer un patch à partir de deux documents JSON ?
Restez sur Générer, collez l'original à gauche et la version modifiée à droite, et l'outil calcule le tableau d'opérations RFC 6902 minimal. Le diff ignore l'ordre des clés, donc des champs réordonnés ne créent pas d'opérations parasites.
Pourquoi mon patch n'a-t-il pas pu s'appliquer ?
Les opérations sont validées par rapport à la source. Les causes courantes sont un chemin inexistant pour remove ou replace, une opération test dont la valeur ne correspond pas, ou un nom d'opération invalide. L'outil affiche l'erreur précise pour que vous puissiez corriger cette opération.
Un merge patch supprime-t-il vraiment une clé avec null ?
Oui. Dans la RFC 7386, une propriété définie à null indique à la fusion de retirer cette clé du résultat. Pour stocker un véritable null, vous devez plutôt utiliser une opération replace RFC 6902.
Mes documents JSON et mes patches sont-ils téléversés quelque part ?
Non. Le générateur, l'applicateur de patch et le moteur de merge patch s'exécutent tous localement dans votre navigateur. Vos données de source, de cible et de patch sont traitées sur votre appareil et ne sont jamais envoyées à ArrayKit.

Outils associés

Tous les outils ArrayKit