logo
GeekFormat

Consulta JSONPath

Consulteu JSON amb expressions JSONPath en línia. Creat per a enginyers de proves d'API i analistes de dades. Extraieu, filtreu i localitzeu amb precisió dades de JSON massius i profundament imbricats mitjançant expressions JSONPath estàndard. Admet ressaltat de sintaxi en temps real, suggeriments d'errors intel·ligents i commutació de doble vista JSON/taula. Ideal per a assercions de proves d'automatització d'API Postman, neteja de dades de registres complexos i extracció de camps de frontend. Processament local pur, ràpid i segur.

Relacionats

Casos d'ús

  • Extracció de camps específics de respostes d'API profundament imbricades durant la depuració d'interfícies
  • Creació d'assercions per a proves d'API automatitzades a Postman abans d'implementar-les al codi
  • Filtratge i neteja de grans volums de dades de registres per cercar registres anòmals
  • Extracció de conjunts de dades d'estructures JSON complexes per a analitzar-los en editors tabulars
  • Prototipatge d'expressions JSONPath per utilitzar en proves de càrrega JMeter
  • Cerca i localització ràpides d'errors en l'estructura de respostes d'API de tercers durant la integració
  • Extracció de camps de fitxers JSON de configuració de frontend per a la refactorització
  • Filtratge de matrius segons condicions numèriques o de cadena durant l'anàlisi de dades
  • Aprenentatge de la sintaxi JSONPath amb exemples integrats per a desenvolupadors principiants
  • Comprovació de l'estructura i el contingut de les notificacions webhook abans de processar-les
  • Comparació de diferents versions de respostes d'API mitjançant l'extracció i comparació de camps clau
  • Preparació de dades de respostes d'API per a documentació o informes

Característiques

  • Extracció precisa de dades: admet la sintaxi JSONPath estàndard, incloent-hi accés a propietats, índexs de matrius, comodins i operacions de tall per a l'adreçament precís de dades
  • Filtratge i assercions intel·ligents: admet filtres ?() amb operadors ==/!=/>/</>=/<= per al filtratge condicional de dades, millorant considerablement l'eficiència de les proves d'API
  • Doble vista interactiva: commutació entre la vista JSON en brut i la vista de taula estructurada amb un sol clic per visualitzar i exportar fàcilment els resultats de l'extracció
  • Ressaltat de sintaxi en temps real: proporciona ressaltat de sintaxi i suggeriments d'errors en temps real, ajudant els desenvolupadors a corregir ràpidament les expressions de consulta
  • Processament local d'alta velocitat: càlculs locals purs al navegador amb l'editor CodeMirror, garantint la seguretat absoluta de les dades de prova sensibles i la privacitat empresarial
  • 8 exemples integrats: exemples preparats per a escenaris habituals, ajudant a dominar ràpidament la sintaxi i començar a treballar immediatament
  • Reparació automàtica d'errors JSON: detecció i reparació automàtica integrades d'errors de sintaxi JSON habituals amb indicacions precises de posició
  • Debounce optimitzat de 400 ms: retard intel·ligent d'execució per evitar càlculs innecessaris durant l'escriptura ràpida, garantint un funcionament suau
  • Suport de dreceres de teclat: dreceres de teclat estàndard de l'editor per cercar, substituir, desfer, refer i altres operacions sense utilitzar el ratolí
  • Historial local de 200 entrades: desament automàtic de les darreres 200 consultes al localStorage per a accés ràpid a sessions de treball anteriors
  • Índex de matriu [-1] (últim): accés convenient als darrers elements de la matriu mitjançant índexs negatius sense calcular prèviament la longitud
  • Tall de matriu [start:end]: extracció flexible de rangs d'elements de matriu mitjançant la sintaxi de talls coneguda dels llenguatges de programació
  • Comodí *: coincidència amb qualsevol camp o element a qualsevol nivell de la jerarquia per a l'extracció de dades a gran escala
  • Commutació JSON/taula: doble vista de resultats per a diferents escenaris d'anàlisi — JSON estructurat o vista de taula clara

Com usar-ho

  1. Enganxeu el contingut JSON al panell esquerre de l'editor o carregueu un dels 8 exemples integrats
  2. Introduïu l'expressió JSONPath al quadre de consulta superior (per exemple, $.store.book[0].title)
  3. Si cal, activeu la reparació automàtica d'errors JSON si les dades font tenen problemes de sintaxi
  4. Visualitzeu els resultats al panell dret; commuteu entre la vista JSON i la vista de taula segons sigui necessari
  5. Copieu el resultat, utilitzeu les dreceres de teclat per a una edició ràpida o deseu la consulta a l'historial local

Preguntes freqients

Com puc utilitzar JSONPath per extreure amb precisió camps específics de JSON profundament imbricat?

Simplement introduïu una expressió JSONPath estàndard al quadre de consulta (per exemple, `$.store.book[0].title`), i l'eina localitzarà i extreurà ràpidament dades profundes mitjançant el recorregut jeràrquic. En comparació amb l'expansió manual de fitxers JSON grans, aquest enfocament millora considerablement l'eficiència de localització de dades, cosa que el fa ideal per gestionar respostes d'API complexes.

Admet comodins o filtres per a consultes condicionals complexes?

Totalment admès. Podeu utilitzar el comodí (*) per fer coincidir qualsevol camp, o filtres ?() per a filtratge avançat. Per exemple, introduir `$.store.book[?(@.price < 10)]` filtrarà instantàniament tots els llibres amb un preu inferior a 10. L'eina ressalta els resultats coincidents en temps real i admet la visualització intuïtiva en vista de taula.

Com pot ajudar-me aquesta eina amb l'automatització de proves d'API i les assercions?

En l'automatització de proves d'API, podeu enganxar el JSON de resposta de l'API a l'eina i escriure expressions JSONPath com a assercions de prova. Verificant ràpidament si el resultat retornat compleix les expectatives (per exemple, comprovant si `$.code` és igual a 200), podeu resoldre ràpidament errors de lògica d'interfície, cosa que en fa un assistent potent en els fluxos de treball de proves de Postman o JMeter.

Com puc accedir a l'últim element d'una matriu?

Utilitzeu l'índex negatiu [-1] per accedir a l'últim element de la matriu, [-2] per al penúltim, i així successivament. Això és molt més convenient que calcular primer la longitud de la matriu, especialment quan es treballa amb respostes d'API dinàmiques.

Com s'utilitza el tall de matriu [start:end]?

El tall de matriu funciona de manera semblant a les matrius de JavaScript: `$.items[0:3]` retorna els 3 primers elements, `$.items[2:5]` — els elements dels índexs 2 al 4. Si ometeu start, el recompte comença des del principi; si ometeu end, fins al final de la matriu.

Quins operadors de comparació s'admeten en els filtres ?()?

S'admeten tots els operadors de comparació principals: == (igual a), != (diferent de), > (més gran que), < (més petit que), >= (més gran o igual que), <= (més petit o igual que). Podeu combinar-los per filtrar dades amb precisió segons valors numèrics o de cadena.

Quants exemples integrats hi ha disponibles?

L'eina conté 8 exemples integrats que cobreixen els escenaris d'ús més habituals: extracció de camps, filtratge condicional, treball amb matrius, comodins, talls i molt més. Podeu carregar qualsevol exemple amb un sol clic per aprendre ràpidament la sintaxi.

Què passa si el meu JSON conté errors de sintaxi?

L'eina té una funció integrada de reparació automàtica d'errors JSON. Detecta automàticament problemes habituals: cometes que falten, comes addicionals, cometes simples en lloc de dobles — i proposa correccions. Els errors es ressalten en temps real amb indicació precisa de la posició.

Com funciona el retard debounce durant l'entrada?

S'utilitza un retard optimitzat de 400 ms. Això significa que la consulta s'executa només després que deixeu d'escriure durant 400 ms, cosa que evita càlculs innecessaris durant l'escriptura ràpida i garanteix un funcionament suau sense retards.

Quines dreceres de teclat s'admeten?

S'admeten les dreceres de teclat estàndard de l'editor CodeMirror: Ctrl/Cmd + F per cercar, Ctrl/Cmd + H per substituir, Ctrl/Cmd + Z per desfer, Ctrl/Cmd + Shift + Z per refer, Ctrl/Cmd + A per seleccionar-ho tot. La llista completa està disponible a l'ajuda de l'editor.

L'historial de consultes es desa localment?

Sí, l'eina desa automàticament les darreres 200 consultes al localStorage del vostre navegador. L'historial es manté fins i tot després de tancar i tornar a obrir la pestanya, cosa que és convenient per tornar a sessions de treball anteriors.

Les dades s'envien al servidor?

No. Tot el processament es realitza exclusivament localment al vostre navegador mitjançant l'editor CodeMirror. Les dades mai no es carreguen a cap servidor, cosa que garanteix la privacitat total quan es treballa amb dades sensibles d'API, testimonis o informació empresarial.

Puc commutar entre la vista JSON i la de taula?

Sí, l'eina admet la doble vista. En la vista de taula, els resultats de la consulta es mostren en un format estructurat amb columnes i files, cosa que és especialment convenient quan s'extreuen matrius d'objectes — podeu visualitzar i comparar fàcilment múltiples registres.

Com puc utilitzar això a Postman per a assercions?

Primer prototipueu i depureu l'expressió JSONPath en aquesta eina, i després copieu-la a les proves de Postman. La sintaxi és compatible amb la implementació de JSONPath utilitzada a Postman per a les assercions pm.response.json(), cosa que permet transferir ràpidament expressions ja fetes.

És apte per a proves a JMeter?

Per descomptat. Les expressions JSONPath desenvolupades aquí es poden utilitzar directament en els components JSON Extractor i JSON Assertion del connector JMeter. Això accelera la creació de plans de prova, permetent comprovar visualment primer la correcció de l'expressió abans d'implementar-la en proves de càrrega.

Què és JSONPath i aquesta eina en línia

JSONPath és un llenguatge de consulta i expressions per extreure dades d'estructures JSON, semblant a XPath per a XML. Permet navegar amb precisió per objectes i matrius profundament imbricats, extreure camps específics, filtrar elements segons condicions i obtenir els fragments de dades necessaris sense escriure bucles o recorreguts manuals. JSONPath va ser proposat per Stefan Gössner el 2007 i des de llavors s'ha convertit en l'estàndard de facto per treballar amb JSON en proves d'API, anàlisi de dades i processament de documents estructurats.

Aquesta eina en línia és una interfície còmoda per executar consultes JSONPath directament al navegador. Està creada especialment per a enginyers de proves d'API, analistes de dades i desenvolupadors frontend que sovint treballen amb estructures complexes de respostes d'API, dades de registres i fitxers de configuració. En lloc d'escriure codi o utilitzar biblioteques feixugues, simplement podeu enganxar el JSON, introduir una expressió i veure el resultat instantàniament.

L'eina admet el nucli de la sintaxi pràctica que cobreix la gran majoria de les tasques diàries. Podeu utilitzar l'accés precís a propietats mitjançant el punt (per exemple, $.store.book.title), la indexació de matrius, incloent-hi índexs negatius per accedir des del final de la matriu ([-1] per a l'últim element), el comodí * per coincidir amb qualsevol camp, talls de matriu [start:end] per extreure rangs i filtres condicionals ?() amb el conjunt complet d'operadors de comparació ==, !=, >, <, >=, <=. Aquest conjunt és suficient per resoldre més del 90% de les tasques típiques d'extracció de dades.

Una de les característiques clau és la doble vista dels resultats: podeu commutar entre la vista clàssica de JSON i la vista de taula estructurada. La vista de taula és especialment convenient quan es treballa amb matrius d'objectes — els resultats es mostren en forma de columnes i files, cosa que facilita l'anàlisi visual, la comparació de valors i la preparació de dades per a informes o processament posterior. La commutació entre modes es fa amb un sol clic sense tornar a consultar.

Per augmentar la productivitat, l'eina inclou 8 exemples preparats que cobreixen escenaris d'ús habituals. Si sou nous a JSONPath, podeu carregar qualsevol exemple amb un sol clic, estudiar l'estructura de l'expressió i veure immediatament el resultat. Durant l'entrada s'utilitza un retard debounce optimitzat de 400 mil·lisegons — la consulta s'executa només després que deixeu d'escriure, cosa que evita retards i càlculs innecessaris durant l'escriptura ràpida.

L'editor està construït sobre CodeMirror, proporcionant un treball professional amb el codi: ressaltat de sintaxi en temps real, numeració de línies, sagnats intel·ligents i suport de dreceres de teclat estàndard per cercar, substituir, desfer i refer accions. L'eina també inclou una funció integrada de reparació automàtica d'errors JSON — detecta problemes habituals (cometes que falten, comes addicionals, cometes simples) i els ressalta amb indicació precisa de la posició, ajudant a preparar ràpidament les dades per a la consulta.

Tot el processament es realitza exclusivament localment al vostre navegador — cap dada s'envia al servidor. Això és críticament important quan es treballa amb dades sensibles: testimonis d'autorització, dades personals dels usuaris, dades empresarials internes o respostes d'API confidencials. Per a la comoditat de la reutilització, l'historial local de les darreres 200 consultes es desa automàticament a l'emmagatzematge localStorage del vostre navegador — l'historial es manté fins i tot després de tancar la pestanya.

Aquesta eina s'utilitza àmpliament quan es treballa amb Postman i JMeter: podeu prototipar i depurar ràpidament una expressió JSONPath aquí, i després copiar-la a les proves de Postman (per a pm.response.json()) o als components JSON Extractor/JSON Assertion de JMeter. És important assenyalar que aquesta implementació se centra en el nucli de la sintaxi pràctica que cobreix més del 90% dels escenaris habituals de desenvolupament: el descens recursiu (..), les expressions de script i les combinacions de múltiples condicions no s'admeten actualment, cosa que s'ha fet intencionadament per garantir velocitat, fiabilitat i comportament predictible.

术语表

$
Element arrel de JSONPath, que representa tot l'objecte o la matriu a l'arrel del document. Qualsevol expressió de camí absolut comença amb ell.
@
Node actual, utilitzat dins les expressions de filtre ?() per fer referència a les propietats de l'element que s'està processant actualment.
*
Comodí que coincideix amb qualsevol camp d'un objecte o qualsevol element d'una matriu al nivell actual de la jerarquia.
.
Operador d'accés a propietat filla, utilitzat per navegar per objectes imbricats, per exemple $.store.book.
[]
Operador d'índex de matriu, utilitzat per accedir als elements per índex, per exemple [0] per al primer element o [-1] per a l'últim.
[start:end]
Operador de tall de matriu, extreu un rang d'elements des de l'índex start fins a end (sense incloure end), de manera semblant als talls de Python o JavaScript.
?()
Operador d'expressió de filtre, aplica una condició a cada element d'una matriu o objecte i retorna només aquells que compleixen la condició.
==
Operador d'igualtat en filtres, comprova si el valor d'una propietat és igual al valor especificat.
!=
Operador de desigualtat en filtres, comprova si el valor d'una propietat és diferent del valor especificat.
>
Operador 'més gran que' en filtres, utilitzat per a comparacions numèriques: comprova si el valor d'una propietat supera el llindar especificat.
>=
Operador 'més gran o igual que' en filtres, comprova si el valor d'una propietat és més gran que el valor especificat o igual a ell.
CodeMirror
Editor de codi d'alt rendiment utilitzat a l'eina per proporcionar ressaltat de sintaxi, numeració de línies i edició còmoda.

Guia de sintaxi bàsica de JSONPath

A continuació es mostren les expressions de sintaxi JSONPath bàsiques admeses per aquesta eina, amb exemples d'ús.

SintaxiExempleDescripció
$$Node arrel, representa tot el document
.property$.storeAccés a la propietat filla d'un objecte
[index]$.books[0]Accés a un element de la matriu per índex (començant per 0)
[-1]$.books[-1]Accés a l'últim element de la matriu
*$.store.*Comodí, coincideix amb qualsevol camp/element
[start:end]$.books[0:3]Tall de matriu, elements des de l'índex start fins a end-1
?()$.books[?(@.price<10)]Filtre condicional, retorna els elements coincidents

Operadors de comparació en filtres

Tots els operadors de comparació admesos per utilitzar dins les expressions de filtre ?().

OperadorExempleDescripció
==?(@.category=='fiction')Igual a — coincidència exacta amb el valor
!=?(@.status!='draft')Diferent de — exclou el valor especificat
>?(@.price>20)Més gran que — per a comparacions numèriques
<?(@.stock<5)Més petit que — per a comparacions numèriques
>=?(@.rating>=4.5)Més gran o igual que
<=?(@.age<=18)Més petit o igual que

Dreceres de teclat de l'editor

Dreceres de teclat estàndard de l'editor CodeMirror per augmentar la productivitat.

Drecera (Windows/Linux)MacAcció
Ctrl + FCmd + FCercar a l'editor
Ctrl + HCmd + HCercar i substituir
Ctrl + ZCmd + ZDesfer l'acció
Ctrl + Shift + ZCmd + Shift + ZRefer l'acció
Ctrl + ACmd + ASeleccionar-ho tot
Ctrl + /Cmd + /Commutar comentari (no admès a JSON)

Privacy & Security

Totes les consultes JSONPath, processament JSON i càlculs d'aquesta eina es realitzen exclusivament localment al vostre navegador mitjançant l'editor CodeMirror. Les dades mai no es carreguen a cap servidor, no es registren ni s'emmagatzemen a la memòria cau de forma remota. L'eina és segura fins i tot quan es processen respostes d'API que contenen secrets, testimonis o informació dels usuaris. Les dades s'esborren automàticament quan es tanca o s'actualitza la pàgina; l'historial local només s'emmagatzema al vostre propi emmagatzematge localStorage.

Authoritative References

Troubleshooting

L'expressió retorna un resultat buit, encara que les dades existeixen

Comproveu la correcció de l'escriptura del camí: sensibilitat a majúscules i minúscules, correcció de la imbricació, presència d'errors de escriptura en els noms dels camps. Recordeu que JSONPath no admet el descens recursiu (..), per tant heu d'indicar el camí complet fins a cada nivell. Intenteu provar primer una expressió més senzilla, complicant-la gradualment.

El filtre ?() no funciona com s'esperava

Assegureu-vos que utilitzeu els operadors de comparació correctes i que els valors de cadena estan entre cometes simples. Comproveu el tipus de dades: els valors numèrics no cal que estiguin entre cometes. Per exemple, ?(@.price<10) és correcte per a nombres, i ?(@.category=='fiction') — per a cadenes.

El JSON es mostra amb errors de sintaxi

L'eina té una funció de reparació automàtica d'errors JSON, però si l'error és complex, proveu d'utilitzar primer una eina separada JSON Repair. Els errors més habituals són: cometes simples en lloc de dobles, claus sense cometes, comes addicionals després del darrer element, claudàtors no tancats.

El descens recursiu .. no funciona

Aquest és el comportament esperat. Aquesta implementació se centra en el nucli de la sintaxi pràctica, que cobreix més del 90% dels escenaris habituals de desenvolupament. El descens recursiu (..), les expressions de script i les combinacions de múltiples condicions no s'admeten actualment. Utilitzeu camins precisos amb indicació explícita dels nivells d'imbricació.