Skip to main content
Volver a herramientas

JSONPath Tester

Ejecuta consultas JSONPath RFC 9535 sobre JSON y ve cada coincidencia

Acerca de JSONPath Tester

Evalúa una expresión JSONPath RFC 9535 sobre tu JSON mientras escribes, en tu navegador, y lista cada valor encontrado con su ruta normalizada y el número de coincidencias. Los ejemplos de un clic sobre una librería de muestra cubren comodines, slices, filtros y las funciones length, count, match, search y value. La sintaxis antigua de Goessner o Jayway, como [(@.length-1)] o =~, se rechaza con una pista sobre su equivalente en RFC 9535.

Categoría: Texto.

Preguntas frecuentes

¿Qué es RFC 9535?

▾

RFC 9535, publicado por el IETF en febrero de 2024, es el primer estándar formal de JSONPath. Define la gramática, cómo los filtros comparan valores, cinco funciones integradas y el formato de ruta normalizada, aspectos que cada implementación anterior resolvía a su manera.

¿En qué se diferencia de JSONPath de Goessner o Jayway?

▾

No admite expresiones de script como [(@.length-1)], el operador =~, in y nin, ni funciones de ruta como .length(); usa [-1], match(), search() o length() dentro de un filtro. Los filtros pueden escribirse sin paréntesis, como en [[email protected] < 10], y las comparaciones nunca convierten tipos, así que 1 y "1" son distintos.

¿Por qué mi consulta no devuelve coincidencias en lugar de un error?

▾

Un miembro inexistente, un índice fuera de rango o un filtro que no coincide con nada son válidos y devuelven una lista vacía. Además, .length selecciona un miembro llamado length y no el tamaño de un array, y una expresión regular inválida en match() o search() simplemente no coincide con nada.

¿Qué es una ruta normalizada?

▾

Es la ruta RFC 9535 única de un nodo encontrado, escrita con corchetes y nombres entre comillas simples, como $['store']['book'][0]. Copy paths devuelve una por línea, y cada una puede pegarse de nuevo como consulta para seleccionar exactamente ese nodo.

Herramientas relacionadas