logo
GeekFormat

Consulta JSONPath

Ferramenta de consulta JSONPath online para engenheiros de teste de API e analistas de dados. Extraia, filtre e localize com precisão dados de JSON massivos profundamente aninhados com sintaxe padrão. Visualização dupla JSON/tabela, 8 exemplos integrados, correção automática de erros, atalhos de teclado, 200 entradas de histórico, editor CodeMirror. Processamento completamente local, rápido e seguro.

Sugestões Relacionadas

Casos de uso

  • Engenheiros de teste de API escrevendo assertivas Postman/JMeter para verificar respostas de API
  • Analistas de dados extraindo campos específicos de logs grandes e exportações JSON
  • Desenvolvedores frontend localizando rapidamente campos necessários de respostas de API aninhadas
  • Testadores QA verificando estrutura e valores de campos em respostas de interface
  • Equipes backend depurando estruturas JSON complexas e localizando anomalias de dados
  • Desenvolvedores limpando e transformando dados de logs para análise
  • Integração de API onde caminhos de dados específicos devem ser identificados e extraídos
  • Redação de documentação técnica onde caminhos de campos JSON devem ser precisados
  • Treinamento de equipes onde sintaxe JSONPath deve ser ensinada e demonstrada
  • Auditorias de dados verificando presença e consistência de campos em conjuntos JSON
  • Extração em lote de dados de respostas de API paginadas ou respostas de array
  • Depuração rápida onde valores de campos específicos devem ser inspecionados sem navegação manual

Recursos

  • Extração precisa de dados: suporta subconjunto de sintaxe JSONPath padrão para direcionamento preciso, incluindo acesso a propriedades, índice de array [-1], curinga * e fatia de array [start:end]
  • Filtragem condicional: filtro ?() com operadores de comparação ==/!=/>/</>=/<= para extrair dados que atendem a condições
  • Visualização dupla interativa: alternância com um clique entre visualização JSON bruta e visualização em tabela estruturada para consulta e exportação de resultados
  • Realce de sintaxe em tempo real: realce de sintaxe profissional e mensagens de erro inteligentes para corrigir expressões de consulta rapidamente
  • 8 exemplos integrados: cobre cenários de uso comum para início rápido e aprendizado de sintaxe
  • Correção automática de erros JSON: repara automaticamente erros de sintaxe comuns como vírgulas finais e aspas faltantes
  • Debounce inteligente de 400ms: execução automática após pausa na digitação, evita execuções frequentes e garante fluidez
  • Atalhos de teclado: atalhos para execução, cópia, limpeza e alternância de visualização para eficiência máxima
  • 200 entradas de histórico local: armazenamento localStorage de consultas recentes para recuperação e reexecução rápidas
  • Editor CodeMirror profissional: realce de sintaxe, dobramento de código, numeração de linhas e correspondência de colchetes
  • Processamento local de alta velocidade: cálculo completo no navegador, segurança absoluta de dados sensíveis de teste e privacidade empresarial
  • Realce de resultados: destaque visual de correspondências nos resultados para identificação rápida
  • Exportação de resultados: cópia com um clique e exportação de resultados de extração em vários formatos
  • Acessibilidade: interface clara e responsiva adaptada a diferentes tamanhos de tela

Como Usar

  1. Colar conteúdo JSON no editor esquerdo ou carregar um arquivo JSON
  2. Inserir expressão JSONPath na caixa de consulta superior (use exemplos integrados como referência)
  3. Os resultados aparecem automaticamente após 400ms no painel direito, em visualização JSON ou tabela
  4. Alternar visualização conforme necessidade, copiar resultados ou consultar histórico para reutilizar expressões

Perguntas frequentes

Como uso JSONPath para extrair com precisão campos específicos de JSON profundamente aninhado?

Basta inserir uma expressão JSONPath padrão na caixa de consulta (por exemplo, `$.store.book[0].title`), a ferramenta localizará e extrairá rapidamente dados profundos por meio de percurso hierárquico. Comparado a expandir manualmente arquivos JSON grandes, essa abordagem melhora muito a eficiência de localização de dados, ideal para processar respostas de API complexas.

Suporta curingas ou filtros para consultas condicionais complexas?

Totalmente suportado. Você pode usar o curinga (*) para corresponder a qualquer campo, ou filtros de expressão ?() para filtragem avançada. Por exemplo, inserir `$.store.book[?(@.price < 10)]` filtrará instantaneamente todos os livros com preço abaixo de 10. A ferramenta destaca resultados correspondentes em tempo real e suporta visualização intuitiva na visualização em tabela.

Como esta ferramenta pode me ajudar com testes automatizados de API e assertivas?

Em testes automatizados de API, cole o JSON da resposta da API na ferramenta e escreva expressões JSONPath como assertivas de teste. Ao verificar rapidamente se o resultado retornado atende às expectativas (por exemplo, verificar se `$.code` é igual a 200), você pode solucionar erros de lógica de interface rapidamente: um assistente poderoso em fluxos de trabalho de teste do Postman ou JMeter.

As expressões JSONPath diferenciam maiúsculas de minúsculas?

Sim, JSONPath diferencia maiúsculas de minúsculas. Os nomes dos campos devem corresponder exatamente, incluindo maiúsculas/minúsculas. Por exemplo, `$.User.Name` e `$.user.name` são caminhos diferentes. A ferramenta avisa imediatamente se não encontrar um caminho correspondente, ajudando a corrigir erros de digitação rapidamente.

Como acesso o último elemento de um array sem saber seu comprimento?

Use o índice [-1] para acessar diretamente o último elemento do array. Por exemplo, `$.store.book[-1]` retorna o último livro. Da mesma forma, [-2] acessa o penúltimo, e assim por diante. Isso é especialmente útil para processar arrays de comprimento dinâmico em respostas de API.

O que é a sintaxe de fatia de array [start:end]?

A fatia [start:end] extrai um intervalo de elementos do array do índice start (inclusivo) até end (exclusivo). Por exemplo, `$.store.book[0:2]` extrai os dois primeiros livros. Se start for omitido, começa em 0; se end for omitido, vai até o final do array. Também suporta passo negativo para percurso inverso.

Posso usar várias condições em um filtro?

Esta versão implementa um subconjunto de sintaxe JSONPath que cobre 90% dos cenários de uso diário. Filtros simples com operadores de comparação ==/!=/&gt;/&lt;/&gt;=/&lt;= são totalmente suportados. Para várias condições ou expressões de script complexas, considere bibliotecas especializadas. A ferramenta mostra uma mensagem clara se detectar sintaxe não suportada.

Como alterno entre visualização JSON bruta e visualização em tabela estruturada?

Basta clicar no botão de alternância de visualização na barra de ferramentas. A visualização JSON mostra a estrutura hierárquica com indentação e realce de sintaxe. A visualização em tabela apresenta os resultados da extração como tabela estruturada, facilitando a consulta e exportação de dados tabulares.

Existem exemplos integrados para começar rapidamente?

Sim, 8 exemplos integrados cobrem cenários de uso comum: acesso simples a propriedades, índice de array, curinga, fatia, filtro etc. Clique no botão de exemplos na barra de ferramentas para carregar rapidamente um exemplo e entender a sintaxe sem escrever do zero.

Como funciona a correção automática de erros JSON?

Se o JSON colado contiver erros de sintaxe comuns (vírgulas finais, aspas faltantes etc.), a ferramenta tenta uma correção automática antes de executar a consulta. Isso evita bloqueios por erros de formatação menores e melhora a continuidade do fluxo de trabalho.

O que é o atraso debounce de 400ms e por quê?

A ferramenta usa debounce de 400ms: a consulta é executada automaticamente 400ms após a última tecla pressionada. Isso evita execuções muito frequentes enquanto você digita, garante fluidez na digitação e evita carga desnecessária, especialmente útil para processar JSON grandes.

Existem atalhos de teclado para melhorar a eficiência?

Sim, vários atalhos de teclado integrados: Ctrl/Cmd+Enter para executar consulta, Ctrl/Cmd+Shift+C para copiar resultados, Ctrl/Cmd+K para limpar, Ctrl/Cmd+Y para alternar visualização. Consulte o menu de atalhos na barra de ferramentas para a lista completa.

Quantas consultas são salvas no histórico?

A ferramenta salva automaticamente as últimas 200 consultas no localStorage do navegador. Você pode recuperar, reexecutar ou excluir itens do histórico rapidamente. Os dados do histórico permanecem localmente no navegador e nunca são enviados para servidores.

Os dados são enviados para servidores?

Não, todo o processamento é feito localmente no navegador. O JSON inserido e as expressões de consulta nunca saem do seu dispositivo, garantindo privacidade absoluta de dados sensíveis de teste e informações empresariais. Mesmo após fechar a página, nenhum dado é retido no servidor.

Qual editor é usado para entrada de JSON?

A ferramenta integra o editor CodeMirror com realce de sintaxe profissional, dobramento de código, numeração de linhas e correspondência de colchetes. Ele oferece uma experiência de edição semelhante a IDE, tornando a entrada e modificação de JSON mais confortáveis.

Sobre JSONPath e consultas online

JSONPath é uma linguagem de expressão para consultar e extrair dados de estruturas JSON. Inspirado no XPath para XML, ele fornece uma maneira de percorrer a hierarquia JSON e localizar campos ou valores com precisão, semelhante a como consultas SQL interrogam bancos de dados. Tornou-se ferramenta indispensável para desenvolvedores e testadores que trabalham com APIs e dados JSON.

O conceito fundamental do JSONPath é o uso de expressões de caminho para navegar pela estrutura em árvore JSON. O símbolo raiz $ representa o ponto de partida, depois o operador ponto . acessa propriedades filhas, e colchetes [] acessam elementos de array por posição. Por exemplo, a expressão $.store.book[0].title parte da raiz, acessa o objeto store, depois o array book, pega o primeiro elemento e retorna o valor do campo title.

Para arrays, JSONPath suporta vários modos de acesso: índices numéricos simples como [0] para o primeiro elemento, índices negativos [-1] para o último elemento sem saber o comprimento do array, curinga * para corresponder a todos os elementos, e sintaxe de fatia [start:end] para extrair intervalos de elementos consecutivos. Esses recursos cobrem a grande maioria das necessidades de acesso a arrays em cenários comuns.

O operador curinga * pode ser usado para corresponder a qualquer propriedade ou elemento. Por exemplo, $.store.* retorna todos os campos diretos em store, e $.store.book[*] retorna todos os elementos no array book. Isso é especialmente útil para percorrer todos os filhos sem saber nomes de campos explícitos.

O recurso de filtro ?() é um mecanismo poderoso para seleção condicional de dados. Em filtros, @ representa o nó atual, e operadores de comparação ==/!=/&gt;/&lt;/&gt;=/&lt;= podem ser usados para filtrar elementos por condição. Por exemplo, $.store.book[?(@.price &lt; 10)] seleciona todos os livros no array book cujo preço é menor que 10: muito prático para extrair rapidamente subconjuntos de dados que atendem a critérios.

Esta ferramenta integra vários recursos para melhorar a experiência de uso: editor CodeMirror com realce de sintaxe profissional, visualização dupla JSON/tabela para apresentação de resultados adaptável, 8 exemplos integrados para início rápido, correção automática de erros JSON comuns, debounce de 400ms para execução fluida durante a digitação, atalhos de teclado para eficiência e 200 entradas de histórico local para recuperar expressões anteriores.

Todo o processamento é feito localmente no navegador: JSON e expressões de consulta nunca são enviados para servidores, garantindo privacidade absoluta de dados sensíveis como chaves API, tokens e informações empresariais. Isso é especialmente importante para engenheiros de teste que processam respostas de API de produção com dados sensíveis.

Esta ferramenta implementa um subconjunto de sintaxe JSONPath cuidadosamente selecionado que cobre 90% dos cenários de uso diário: acesso a propriedades, índices de array (positivos/negativos), curinga *, fatia [start:end] e filtros simples ?() com operadores de comparação. Recursos avançados como descida recursiva (..), expressões de script complexas e combinações de várias condições não são suportados nesta versão, priorizando estabilidade e simplicidade para usos comuns.

术语表

JSONPath
Linguagem de expressão para consultar e extrair dados de estruturas JSON, semelhante ao XPath para XML
$
Símbolo raiz que representa o objeto ou array JSON raiz, ponto de partida de toda expressão JSONPath
@
Nó atual em expressões de filtro, representa o elemento em processamento
.
Operador de acesso filho para acessar propriedades de objeto, por exemplo $.store.book acessa o campo book em store
[]
Operador de índice de array para acessar elementos por posição, [-1] representa o último elemento
*
Curinga que corresponde a qualquer propriedade ou elemento de array, por exemplo $.store.* retorna todos os campos em store
[start:end]
Fatia de array para extrair um intervalo de elementos do índice start até end (exclusivo)
?()
Expressão de filtro para selecionar elementos que atendem a uma condição, usando operadores de comparação
Visualização tabela
Apresentação de resultados de extração como tabela estruturada com colunas e linhas para leitura facilitada
Debounce 400ms
Tempo de espera antes de executar consulta após última tecla pressionada, evita execuções excessivas durante a digitação
localStorage
Armazenamento local do navegador para salvar histórico de consultas sem enviar dados para servidores
CodeMirror
Biblioteca de editor de código integrada que oferece realce de sintaxe profissional e recursos de edição

Tabela de referência de sintaxe JSONPath

Sintaxe JSONPath suportada com descrições e exemplos

SintaxeDescriçãoExemplo
$Objeto/array raiz$
.propertyAcesso a propriedade filha$.store.book
[n]Índice de array (n positivo/negativo)$.book[0] / $.book[-1]
*Curinga, qualquer campo/elemento$.store.*
[start:end]Fatia de array$.book[0:2]
?(condition)Filtro condicional$.book[?(@.price &lt; 10)]

Tabela de operadores de comparação para filtros

Operadores de comparação utilizáveis em expressões de filtro ?()

OperadorSignificadoExemplo
==Igual a?(@.price == 10)
!=Diferente de?(@.category != "reference")
&gt;Maior que?(@.price &gt; 10)
&lt;Menor que?(@.price &lt; 10)
&gt;=Maior ou igual a?(@.price &gt;= 10)
&lt;=Menor ou igual a?(@.price &lt;= 10)

Tabela de atalhos de teclado

Atalhos de teclado integrados para melhorar eficiência

AtalhoAção
Ctrl/Cmd + EnterExecutar consulta
Ctrl/Cmd + Shift + CCopiar resultados
Ctrl/Cmd + KLimpar editor e consulta
Ctrl/Cmd + YAlternar entre visualização JSON e tabela

Privacy & Security

Todas as consultas JSONPath, edições JSON e processamentos nesta ferramenta são executados completamente no seu navegador. Os dados não são enviados para servidores, nem armazenados ou cacheados remotamente. Mesmo ao processar respostas de API com chaves, tokens ou informações empresariais sensíveis, é absolutamente seguro. Após fechar ou atualizar a página, os dados são removidos (o histórico é salvo apenas no seu localStorage).

Authoritative References

Troubleshooting

Nenhum resultado retornado / caminho não encontrado

Verifique se os nomes dos campos estão escritos corretamente (diferencia maiúsculas/minúsculas), se a estrutura JSON corresponde ao caminho esperado. Teste primeiro um exemplo integrado para validar funcionamento, depois construa a expressão gradualmente a partir da raiz.

Erro de sintaxe JSON na entrada

A ferramenta tenta correção automática de erros comuns. Se a correção falhar, verifique aspas duplas para chaves e strings, ausência de vírgula final após o último elemento, pares de chaves/colchetes fechados corretamente. Use a ferramenta de reparo JSON se necessário.

A expressão de filtro não funciona como esperado

Verifique se @ faz referência ao campo correto no array, se os valores comparados são do tipo adequado (números sem aspas, strings com aspas duplas). Esta versão suporta filtros simples; várias condições e scripts não são suportados.

A descida recursiva .. não funciona

A descida recursiva (..) não é suportada nesta versão. Esta ferramenta implementa um subconjunto de sintaxe que cobre 90% dos cenários comuns. Para busca recursiva profunda, construa caminhos explícitos nível por nível.