🔍

Herramienta Consulta JSONPath

Consultar y extraer datos JSON usando expresiones JSONPath

Entrada JSON

JSONPath

Ejemplos: $.store.book[0].title, $.store.book[*], $..author

Qué es JSONPath

JSONPath es un lenguaje de consulta para JSON, análogo a XPath para XML. Proporciona sintaxis estandarizada para navegar y extraer datos de estructuras JSON complejas usando expresiones ruta. JSONPath usa $ para representar objeto raíz, . para acceso hijo, [] para indexación array, * para comodines, .. para descenso recursivo. Soporta filtros [?(@.property > Valeur)], corte arrays [Démarrer:end:Étape], selectores múltiples. JSONPath ampliamente usado en pruebas API, transformación datos, consulta configuración, tareas manipulación JSON. Simplifica extracción valores específicos desde JSON profundamente anidado sin escribir código JavaScript complejo.

Características

🔍

Sintaxis Consulta Avanzada

Soportar sintaxis JSONPath completa incluyendo comodines (*), descenso recursivo (..), corte arrays ([Démarrer:end]), filtros ([?(@.price < 10)]), selectores rutas múltiples
📋

Plantillas Expresión Ruta

Plantillas preconstruidas para consultas comunes: acceso raíz ($), hijo directo ($.key), elementos array ($.arr[*]), elementos filtrados ($.arr[?(@.id)]), búsqueda recursiva ($..key)

Vista Previa Tiempo Real

Ejecutar consultas Instantanéáneamente con entrada y salida JSON resaltadas sintaxis, mostrar rutas coincidentes, contar resultados, resaltar nodos coincidentes en JSON fuente
💾

Exportación Resultados

Exportar resultados consulta como JSON (array o valor único), CSV para datos tabulares, texto formateado con opciones copiar y descargar un clic

📋Guía de uso

1️⃣
Ingresar Datos JSON
Pegar o subir datos JSON que desea consultar
2️⃣
Escribir JSONPath
Ingresar expresión JSONPath o usar plantillas para patrones comunes
3️⃣
Ejecutar Consulta
Ejecutar consulta para ver resultados coincidentes con resaltado sintaxis
4️⃣
Exportar Resultados
Copiar o descargar datos extraídos en formato preferido

📚Introducción técnica

📝Sintaxis JSONPath

Expresiones JSONPath comienzan con $ (objeto raíz) y usan notación punto ($.property) o notación corchete ($['property']) para acceso. Nodos hijos usan separador . ($.store.book), arrays usan [index] o [*] para todos elementos. Corte array [Démarrer:end:Étape] extrae rangos como [0:3] (primeros 3 elementos) o [-1] (último elemento). Operador descenso recursivo .. busca todos niveles: $..author encuentra todas propiedades author sin importar profundidad anidación. Operador unión [,] selecciona múltiples elementos: $[0,2,5] obtiene índices array específicos.

🔍Expresiones Filtro

Filtros usan sintaxis [?(@.condition)] para seleccionar elementos coincidentes criterios. @ representa nodo actual en iteración. Operadores comparación: ==, !=, <, <=, >, >=. Operadores lógicos: && (y), || (o), ! (Non). Ejemplos: [?(@.price < 10)] selecciona elementos con precio bajo 10; [?(@.Catégorie == 'fiction' && @.price < 20)] combina condiciones. Coincidencia expresión regular: [?(@.Nom =~ /pattern/)] filtra por regex. Filtros pueden referenciar raíz con $ para comparaciones a través jerarquía: [?(@.price < $.maxPrice)].

🔧Variantes Implementación

JSONPath tiene múltiples implementaciones con ligeras variaciones sintaxis: Original Goessner (JavaScript), Jayway (Java), jsonpath-ng (Python). Diferencias incluyen operadores filtro (algunos usan @ vs $), soporte regex, expresiones script, extensiones funciones. Algunas implementaciones agregan funciones como @.length, @.min(), @.max() para agregación. Expresiones script [(@.price * @.quantity)] habilitan cálculos. Operador padre ^ y ruta actual ~ proporcionan contexto. Siempre verificar documentación implementación objetivo para características soportadas y peculiaridades sintaxis.

🎯Aplicaciones Prácticas

JSONPath sobresale en análisis respuesta API, extracción campos específicos respuestas JSON API REST sin deserialización completa. Gestión configuración usa JSONPath para consultar y actualizar valores config anidados. Tuberías transformación datos emplean JSONPath para mapear JSON fuente a esquemas objetivo. Frameworks pruebas (Postman, REST Assured) usan aserciones JSONPath para validar estructura y valores respuesta. Análisis Journaux extrae campos relevantes Journaux formato JSON. Herramientas GraphQL y OpenAPI usan JSONPath para recorrido y validación esquema. Rendimiento: Para JSON grandes, considerar analizadores streaming o bases datos (sintaxis consulta MongoDB, jsonb_path_query PostgreSQL).

Preguntas frecuentes

¿Por qué mi consulta Non devuelve resultados?

Compruebe que la ruta empieza por $, los índices de array son válidos y los nombres de campo coinciden. Valide primero con una ruta Simple.
💬

¿Cómo busco una clave en cualquier nivel?

Use descenso recursivo: $..author busca author en todos los niveles.
🔍

¿Cómo escribo filtros?

Utilice [?(@.price < 10)]. @ representa el elemento actual. Combine condiciones con && y ||.
💡

¿Diferencia entre resultado vacío y null?

Vacío significa sin coincidencias; null indica que el valor encontrado es null. Verifique los datos de origen y la expresión.
📚

¿Rendimiento con JSON grandes?

Evite usar .. en exceso; delimite primero y luego filtre. Considere procesamiento por streaming o del lado del servidor.

🔗Documentos relacionados

User Comments

0 / 2000
Loading...