Compare dois documentos JSON e veja cada valor adicionado, removido e alterado
Funciona no seu navegador. Nada do que você digita é enviado a lugar nenhum.Comparar dois documentos JSON a olho deixa de funcionar lá pelas 20 linhas. Esta ferramenta lista cada valor adicionado, removido ou alterado, com o caminho, para que a diferença de configuração entre dois ambientes fique óbvia. Os dois documentos são analisados no seu navegador e nenhum é enviado.
Esta página foi traduzida automaticamente do original em inglês. Nenhuma pessoa revisou ainda a tradução; a versão em inglês é a que deve ser considerada. Ler o original em inglês
Cole o JSON mais antigo em Esquerda (antes) e o mais novo em Direita (depois), ou clique em Ver um exemplo.
Ative Ignorar a ordem dos arrays se os itens puderem aparecer em outra posição.
Escolha Lado a lado ou Unificado e leia cada valor adicionado, removido e alterado com o caminho.
Clique em Copiar diferenças, ou em Baixar relatório para salvar a lista como arquivo de texto.
Esta ferramenta compara dois documentos JSON pela estrutura, não pelo texto. Cole um em cada caixa e você recebe uma lista: valores adicionados, valores removidos e valores alterados, cada um com o caminho onde está, como $.customer.name ou $.items[2].price. Uma contagem no topo diz quantos há de cada tipo e se os dois documentos são, na verdade, iguais.
Comparar JSON como texto falha por um motivo que todo mundo já viu: os dois arquivos significam a mesma coisa, mas as chaves saíram em outra ordem, então um diff por linhas marca o arquivo inteiro como alterado. Aqui, a ordem das chaves nunca é diferença, porque um objeto é um conjunto de chaves e nada no JSON diz qual vem primeiro. Espaços e indentação são ignorados pelo mesmo motivo.
A ordem dos arrays é diferença por padrão, porque [1, 2] e [2, 1] são de fato JSON diferentes. Quando a ordem é um acaso do seu banco de dados ou da sua API, ative "Ignorar a ordem dos arrays": os itens passam a ser pareados por igualdade profunda e só os que ficam sem par aparecem como adicionados ou removidos.
Usos comuns são descobrir por que uma resposta de staging difere da de produção, achar a configuração que alguém mudou em um arquivo e confirmar que uma migração gerou exatamente o documento esperado. O resultado é copiado e baixado como texto simples que se lê como um patch, com um menos, um mais ou um til antes de cada caminho, fácil de colar em um chamado. Os dois documentos ficam no seu navegador e nunca são enviados.
Sim. Sem cadastro, sem limite de tamanho de documento e sem limite de comparações. A página é mantida por alguns anúncios exibidos fora da ferramenta, e os seus documentos nunca fazem parte deles.
Não. Os dois documentos são analisados e comparados no seu navegador. Dados com registros de clientes, tokens ou endpoints internos nunca saem do seu dispositivo, e nada é guardado depois que você fecha a aba.
Não. Os objetos são comparados por chave, então {"a":1,"b":2} e {"b":2,"a":1} são o mesmo documento e não geram diferenças. Indentação e espaços são ignorados pelo mesmo motivo. É exatamente aí que um diff de texto comum erra.
Sim, com a opção Ignorar a ordem dos arrays. Os itens passam a ser pareados por igualdade profunda e só aparecem os que não têm par do outro lado. Deixe desligada quando a ordem importa, por exemplo em uma lista de etapas ou em um ranking.
Cada caminho diz em que ponto do documento está a diferença. O cifrão é a raiz do documento, um ponto é uma chave de objeto e os colchetes são um índice de array ou uma chave que não é uma palavra simples. Dá para colar um caminho na maioria das ferramentas de consulta JSON.
Sim. Copie ou baixe o relatório como texto simples. Ele começa com as contagens e depois traz uma linha por diferença: um menos para o que foi removido, um mais para o que foi adicionado e um til para um valor alterado, com o valor antigo e o novo lado a lado.
Ainda com dúvidas? Pergunte sobre Comparar JSON e qualquer pessoa que saiba pode responder. Não é preciso ter conta.