DevToys Web Pro iconDevToys Web ProBlog
Valóranos:
Prueba la extensión del navegador:

Probador de JSONPath

Expresión JSONPath

Entrada JSON

  • Resultados

  • Loading editor...
    No se encontraron resultados
    SintaxisDescripción
    $El objeto o array raíz
    @Nodo actual (usado en expresiones de filtro)
    object.propertyHijo con notación de punto
    ['object'].['property']Hijo o hijos con notación de corchetes
    ..propertyDescenso recursivo
    *Comodín. Selecciona todos los elementos
    [n]Selecciona el enésimo elemento de un array
    [n1,n2]Selecciona los elementos n1 y n2 del array (unión)
    [start:end:step]Operador de segmento del array
    ?(expression)Expresión de filtro
    (expression)Expresión de script
    Detalles técnicos

    Cómo funciona el probador de JSONPath

    Qué hace la herramienta

    El probador de JSONPath te permite consultar datos JSON anidados usando expresiones JSONPath, de forma similar a cómo funciona XPath para XML. Este probador de jsonpath funciona como un probador de expresiones JSONPath y selector de JSON, ayudando a los desarrolladores a extraer valores, arrays u objetos específicos de estructuras JSON complejas. Cuando necesitas probar jsonpath online, esta herramienta muestra todos los valores coincidentes y sus rutas. Admite la sintaxis de JSONPath, incluida la notación de punto ( $.store.book), la notación de corchetes ( $['store']['book']), comodines ( $..*), segmentación de arrays y expresiones de filtrado. Esta herramienta sigue la semántica de jsonpath-plus; las implementaciones de JSONPath varían, así que si tu expresión funciona en otro lugar pero no aquí, puede ser una diferencia de dialecto. Muestra tanto los valores coincidentes como las rutas JSONPath, lo que facilita entender cómo las expresiones navegan por las estructuras JSON.

    Casos de uso comunes para desarrolladores

    Los desarrolladores usan probadores de JSONPath cuando trabajan con respuestas de API, archivos de configuración o estructuras de datos JSON complejas y anidadas. Un probador de expresiones JSONPath ayuda a extraer campos específicos de objetos profundamente anidados, filtrar arrays por predicado o encontrar todas las apariciones de una clave concreta. Muchos desarrolladores usan probadores de JSONPath para consultar datos JSON de APIs REST, analizar archivos de registro o navegar por objetos de configuración complejos. La herramienta es valiosa al depurar transformaciones de datos, validar respuestas de API o comprender esquemas JSON complejos. Antes de ejecutar consultas JSONPath, quizá quieras dar formato a tu JSON usando el Formateador de JSON para una mejor legibilidad. Para archivos de configuración, el Convertidor JSON ↔ YAML puede ayudar a convertir entre formatos. Al inspeccionar datos de arrays, la herramienta JSON Array a Tabla puede exportar resultados a formato tabular para un análisis más sencillo.

    Formatos de datos, tipos o variantes

    JSONPath ofrece múltiples formas de navegar por estructuras JSON. La herramienta admite el selector raíz ($), selectores de hijo (. o []), selectores descendientes ( ..), indexación de arrays ([0], [-1]) y segmentación de arrays ( [0:3]). Expresiones JSONPath comunes que usan los desarrolladores:

    • $.items[*].id — Extraer todos los campos id del array items
    • $..id— Encontrar todos los campos id en cualquier nivel de anidamiento
    • $['key-with-dash'] — Acceder a claves con caracteres especiales
    • $..book[?(@.price < 10)].title — Filtrar libros por precio y extraer títulos

    Estas expresiones demuestran cómo JSONPath puede consultar arrays anidados, filtrar objetos por predicado y extraer campos específicos de estructuras complejas.

    Errores comunes y casos límite

    Un error común es confundir JSONPath con el acceso a propiedades de objetos en JavaScript, ya que JSONPath usa una sintaxis diferente para el filtrado de arrays y los comodines. Otro problema es entender cuándo usar notación de punto frente a notación de corchetes: la notación de punto funciona para claves simples, pero la notación de corchetes es necesaria para claves con caracteres especiales o cuando se usan expresiones. La indexación de arrays puede ser complicada: los índices negativos como [-1]se refieren al último elemento, pero no todas las implementaciones de JSONPath lo admiten. Las expresiones de filtrado deben usar los operadores de comparación correctos y referenciar el elemento actual con @. Los selectores descendientes (..) pueden devolver resultados inesperados si coinciden con más elementos de los previstos. Los desarrolladores deberían probar expresiones JSONPath con diversas estructuras JSON, incluidos casos límite como arrays vacíos, valores null y objetos profundamente anidados. Algunas implementaciones de JSONPath tienen diferencias sutiles en cómo manejan los casos límite, por lo que las pruebas son esenciales.

    Errores y validación

    Al trabajar con JSONPath, pueden ocurrir varias condiciones de error. Una entrada JSON no válida dará como resultado un error de análisis antes de que se evalúe la expresión JSONPath. Las expresiones JSONPath no válidas devolverán un mensaje de error que indica qué está mal en la sintaxis. Los resultados vacíos se devuelven como un array vacío cuando la expresión no coincide con ningún valor en la estructura JSON; esto es un comportamiento normal, no un error. La herramienta valida tanto la sintaxis JSON como la sintaxis de la expresión JSONPath, proporcionando mensajes de error claros para entradas mal formadas. Si tu expresión JSONPath es válida pero no devuelve resultados, puede que la expresión no coincida con la estructura de tus datos JSON, o que los datos no contengan los campos esperados.

    Cuándo usar esta herramienta vs código

    Usa este probador de JSONPath para desarrollar consultas rápidamente, depurar expresiones complejas o explorar estructuras de datos JSON. Es ideal para probar expresiones JSONPath antes de implementarlas en código, especialmente al trabajar con APIs desconocidas o datos anidados complejos. La retroalimentación visual ayuda a identificar por qué las expresiones coinciden o no coinciden con datos específicos. Para código de producción, usa bibliotecas JSONPath integradas en tu aplicación que puedan procesar datos JSON de forma eficiente. Las herramientas del navegador destacan en el desarrollo interactivo y la exploración, mientras que las soluciones basadas en código proporcionan rendimiento, seguridad de tipos e integración con canalizaciones de procesamiento de datos. Para conjuntos de datos grandes o aplicaciones de alto rendimiento, las implementaciones nativas de JSONPath en tu lenguaje de programación ofrecen mejor rendimiento que las herramientas basadas en navegador.