Avaliador JSONPath Online

Teste uma expressão JSONPath contra o seu JSON e veja as correspondências ao vivo, direto no seu navegador. Seus dados ficam no seu dispositivo.

Seu JSON é analisado e consultado localmente no seu navegador e nunca é enviado, mas evite colar dados de produção sensíveis em qualquer ferramenta online.

Precisa ler a árvore inteira primeiro? Experimente o Visualizador JSON.

Sobre Avaliador JSONPath

Este avaliador JSONPath permite consultar um documento JSON com uma expressão JSONPath e ver as correspondências se atualizarem enquanto você digita. Cole qualquer objeto ou array JSON, insira um caminho como $.store.book[*].author, $..price ou $.items[?(@.active)], e a ferramenta mostra quantos nós corresponderam, os valores correspondentes como JSON formatado e um botão para ver os JSON Pointers. Como testador JSONPath, ele tem suporte à sintaxe completa: a raiz $, acesso a filhos com ponto e colchetes, o operador de descida recursiva .., curingas [*], fatias de array, uniões e expressões de filtro com @ e comparações. Clique em qualquer uma das expressões de exemplo para colocá-la na caixa de consulta. JSON inválido e caminhos quebrados produzem um erro claro em vez de uma tela em branco. Tudo roda no seu navegador, então o JSON que você avalia fica no seu dispositivo.

Recursos

Como usar Avaliador JSONPath

  1. Cole ou digite seu JSON no painel JSON à esquerda.
  2. Insira uma expressão JSONPath na caixa de consulta, ou clique em um dos exemplos.
  3. Leia os valores correspondentes à direita e confira a contagem de correspondências acima deles.
  4. Mude para Caminhos para ver o JSON Pointer de cada correspondência, depois Copie os resultados.

Exemplo

Entrada

$.store.book[?(@.price < 10)].title

Saída

[
  "Sayings of the Century",
  "Moby Dick"
]

Uma expressão de filtro mantém apenas os livros mais baratos que 10, depois projeta cada título.

Erros comuns e solução de problemas

Perguntas frequentes

Qual é a diferença entre $.. e $. no JSONPath?
$. segue um caminho exato nível por nível a partir da raiz, então $.store.book corresponde apenas a uma chave book diretamente sob store. $.. é o operador de descida recursiva: $..book encontra cada chave book em qualquer profundidade do documento. Use $.. quando não tiver certeza de onde um campo vive.
Este avaliador JSONPath tem suporte a expressões de filtro?
Sim. Filtros usam a sintaxe [?(...)] onde @ é o nó atual, por exemplo $.items[?(@.active)] ou $.store.book[?(@.price < 10)]. Você pode comparar números, strings e booleanos e combinar condições com && e ||.
O que o botão Caminhos mostra?
Ele retorna um JSON Pointer para cada correspondência em vez do valor — uma string como /store/book/0/author que localiza o nó no documento. Pointers são úteis quando você precisa saber onde um valor vive, não apenas o que ele é.
Por que minha expressão corresponde a mais resultados do que eu esperava?
Curingas e descida recursiva são gananciosos: [*] corresponde a cada elemento de um array ou a cada propriedade de um objeto, e $.. percorre a árvore inteira. Restrinja o resultado com uma chave específica, um índice, uma fatia de array como [0:2] ou um filtro.
Posso selecionar vários elementos do array de uma vez?
Sim. Use uma união como [0,2] para escolher índices específicos, ou uma fatia como [1:3] para um intervalo e [-1:] para o último elemento. Ambos funcionam em qualquer array alcançado pelo caminho.
Meu JSON é enviado para algum lugar quando executo uma consulta?
Não. A expressão é avaliada inteiramente no seu navegador, então o JSON que você cola e as consultas que você executa são processados localmente no seu dispositivo e não são enviados.

Ferramentas relacionadas

Todas as ferramentas de ArrayKit