Gerador e Aplicador de JSON Patch

Gere um JSON Patch RFC 6902 entre dois documentos, aplique um patch a uma origem ou execute um merge patch RFC 7386 — inteiramente no seu navegador.

O Gerador de JSON Patch roda inteiramente no seu navegador. Os documentos e patches que você cola sofrem diff e são aplicados no seu dispositivo e nunca são enviados à ArrayKit.

Abrir a ferramenta de Diff JSON

Sobre Gerador de JSON Patch

O Gerador de JSON Patch transforma a diferença entre dois documentos JSON em um array de operações RFC 6902 limpo — os passos de add, remove, replace, move e copy que transformam uma origem em um alvo. Mude para o modo Aplicar para rodar um patch contra um documento de origem e ver o resultado exato, com cada operação validada, de modo que uma op inválida ou um test que falha seja capturado em vez de ignorado silenciosamente. Um terceiro modo aplica JSON Merge Patches do RFC 7386, em que um valor null deleta uma chave e objetos se fundem chave por chave. É feito para desenvolvedores que estão montando endpoints PATCH, sincronizando configuração ou revisando mudanças de API. Sua origem, seu alvo e seu patch são processados no seu dispositivo e nunca saem do navegador.

Recursos

Como usar Gerador de JSON Patch

  1. Escolha Gerar para fazer o diff de dois documentos, Aplicar patch para rodar um patch RFC 6902, ou Merge patch para RFC 7386
  2. Cole seu JSON de origem à esquerda
  3. Cole o documento alvo, o array de patch ou o merge patch à direita
  4. Leia as operações geradas ou o resultado corrigido, depois copie-o ou baixe-o

Exemplo

Entrada

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

Saída

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

Gerar produz as operações RFC 6902 que transformam a origem no alvo.

Erros comuns e solução de problemas

Perguntas frequentes

O que é um JSON Patch RFC 6902?
O RFC 6902 é um formato que descreve mudanças em um documento JSON como um array ordenado de operações — add, remove, replace, move, copy e test — cada uma apontando para um caminho JSON Pointer. Aplicar o array à origem produz o alvo.
Como o JSON Merge Patch (RFC 7386) difere do JSON Patch (RFC 6902)?
Um merge patch é ele próprio um objeto JSON que espelha o alvo: chaves presentes são definidas, um valor null deleta uma chave, e arrays e escalares substituem por completo. É mais simples, mas não pode mover valores nem editar elementos individuais de array como as operações RFC 6902 podem.
Como gero um patch a partir de dois documentos JSON?
Fique em Gerar, cole o original à esquerda e a versão alterada à direita, e a ferramenta calcula o array de operações RFC 6902 mínimo. O diff ignora a ordem das chaves, então campos reordenados não criam operações espúrias.
Por que meu patch falhou ao aplicar?
As operações são validadas contra a origem. Causas comuns são um caminho que não existe para remove ou replace, uma operação test cujo valor não corresponde, ou um nome de op inválido. A ferramenta mostra o erro específico para você corrigir aquela operação.
Um merge patch realmente deleta uma chave com null?
Sim. No RFC 7386, uma propriedade definida como null instrui o merge a remover aquela chave do resultado. Para armazenar um null de verdade você precisa usar uma operação replace do RFC 6902.
Meus documentos JSON e patches são enviados para algum lugar?
Não. O gerador, o aplicador de patch e o motor de merge patch rodam todos localmente no seu navegador. Sua origem, seu alvo e seus dados de patch são processados no seu dispositivo e nunca são enviados à ArrayKit.

Ferramentas relacionadas

Todas as ferramentas de ArrayKit