logo
GeekFormat

JSONPath Online Query

Online JSONPath-querytool voor API-testingenieurs en data-analisten. Extraheer, filter en lokaliseer nauwkeurig gegevens uit massieve diep geneste JSON met standaardsyntaxis. Dubbele weergave JSON/tabel, 8 ingebouwde voorbeelden, automatische foutherstel, sneltoetsen, 200 geschiedenisitems, CodeMirror-editor. Volledig lokale verwerking, snel en veilig.

Gerelateerde aanbevelingen

Toepassingsgevallen

  • API-testingenieurs die Postman/JMeter-asserties schrijven om API-reacties te verifiëren
  • Data-analisten die specifieke velden extraheren uit grote logs en JSON-exporten
  • Frontend-ontwikkelaars die snel benodigde velden lokaliseren uit geneste API-reacties
  • QA-testers die structuur en veldwaarden in interfacereacties verifiëren
  • Backend-teams die complexe JSON-structuren debuggen en gegevensanomalieën lokaliseren
  • Ontwikkelaars die loggegevens opschonen en transformeren voor analyse
  • API-integratie waarbij specifieke gegevenspaden moeten worden geïdentificeerd en geëxtraheerd
  • Technische documentatie schrijven waarbij JSON-veldpaden moeten worden gepreciseerd
  • Teamtraining waarbij JSONPath-syntaxis moet worden onderwezen en gedemonstreerd
  • Gegevensaudits die veldaanwezigheid en -consistentie in JSON-verzamelingen verifiëren
  • Batchgegevensextractie uit gepagineerde API-reacties of array-reacties
  • Snelle debugging waarbij specifieke veldwaarden moeten worden geïnspecteerd zonder handmatige navigatie

Functies

  • Nauwkeurige gegevensextractie: ondersteunt standaard JSONPath-syntaxis-subset voor nauwkeurige targeting, inclusief eigenschapstoegang, array-index [-1], joker * en array-slice [start:end]
  • Conditionele filtering: filter ?() met vergelijkingsoperatoren ==/!=/>/</>=/<= om gegevens te extraheren die aan voorwaarden voldoen
  • Dubbele interactieve weergave: wissel met één klik tussen onbewerkte JSON-weergave en gestructureerde tabelweergave voor bekijken en exporteren van resultaten
  • Realtime syntaxismarkering: professionele syntaxismarkering en slimme foutmeldingen om query-expressies snel te corrigeren
  • 8 ingebouwde voorbeelden: dekt veelvoorkomende gebruiksscenario's voor snelle start en syntaxisleren
  • Automatische reparatie van JSON-fouten: repareert automatisch veelvoorkomende syntaxisfouten zoals afsluitende komma's en ontbrekende aanhalingstekens
  • Intelligente 400ms debounce: automatische uitvoering na typauze, voorkomt frequente uitvoeringen en garandeert vloeiendheid
  • Sneltoetsen: sneltoetsen voor uitvoering, kopiëren, wissen en weergavewissel voor maximale efficiëntie
  • 200 lokale geschiedenisitems: localStorage-opslag van recente query's voor snel ophalen en opnieuw uitvoeren
  • Professionele CodeMirror-editor: syntaxismarkering, codevouwing, regelnummers en haakjesparing
  • Lokale hogesnelheidsverwerking: volledige browserberekening, absolute veiligheid van gevoelige testgegevens en bedrijfsprivacy
  • Resultaatmarkering: visuele markering van overeenkomsten in resultaten voor snelle identificatie
  • Resultaatexport: kopie met één klik en export van extractieresultaten in verschillende formaten
  • Toegankelijkheid: duidelijke, responsieve interface aangepast aan verschillende schermformaten

Hoe te gebruiken

  1. JSON-inhoud in de linkereditor plakken of een JSON-bestand laden
  2. JSONPath-expressie invoeren in het bovenste queryvak (gebruik ingebouwde voorbeelden als referentie)
  3. Resultaten verschijnen automatisch na 400ms in het rechterpaneel, in JSON- of tabelweergave
  4. Wissel indien nodig van weergave, kopieer resultaten of raadpleeg geschiedenis om expressies te hergebruiken

Veelgestelde vragen

Hoe gebruik ik JSONPath om specifieke velden nauwkeurig te extraheren uit diep geneste JSON?

Voer eenvoudig een standaard JSONPath-expressie in het zoekvak in (bijv. `$.store.book[0].title`), de tool lokaliseert en extraheert snel diepe gegevens via hiërarchische traversatie. Vergeleken met het handmatig uitklappen van grote JSON-bestanden verbetert deze aanpak de efficiëntie van gegevenslokalisatie aanzienlijk, ideaal voor het verwerken van complexe API-reacties.

Ondersteunt het jokers of filters voor complexe conditionele zoekopdrachten?

Volledig ondersteund. U kunt de joker (*) gebruiken om elk veld te matchen, of filterexpressies ?() voor geavanceerde filtering. Als u bijvoorbeeld `$.store.book[?(@.price < 10)]` invoert, worden onmiddellijk alle boeken met een prijs onder 10 gefilterd. De tool markeert overeenkomende resultaten in realtime en ondersteunt intuïtieve weergave in de tabelweergave.

Hoe kan deze tool mij helpen met API-automatiseringstests en asserties?

Bij API-automatiseringstests plakt u de JSON van de API-reactie in de tool en schrijft u JSONPath-expressies als testasserties. Door snel te controleren of het geretourneerde resultaat aan verwachtingen voldoet (bijv. controleren of `$.code` gelijk is aan 200), kunt u interfacelogicafouten snel oplossen: een krachtige assistent in Postman- of JMeter-testworkflows.

Zijn JSONPath-expressies hoofdlettergevoelig?

Ja, JSONPath is hoofdlettergevoelig. Veldnamen moeten exact overeenkomen, inclusief hoofdletters/kleine letters. `$.User.Name` en `$.user.name` zijn bijvoorbeeld verschillende paden. De tool waarschuwt onmiddellijk als er geen overeenkomend pad wordt gevonden, waardoor u typfouten snel kunt corrigeren.

Hoe krijg ik toegang tot het laatste element van een array zonder de lengte te kennen?

Gebruik index [-1] om direct toegang te krijgen tot het laatste array-element. `$.store.book[-1]` retourneert bijvoorbeeld het laatste boek. Evenzo benadert [-2] het voorlaatste element, enzovoort. Dit is vooral handig bij het verwerken van arrays met dynamische lengte in API-reacties.

Wat betekent de array-slice-syntaxis [start:end]?

De slice [start:end] extraheert een bereik van array-elementen van index start (inclusief) tot end (exclusief). `$.store.book[0:2]` extraheert bijvoorbeeld de eerste twee boeken. Als start wordt weggelaten, begint het bij 0; als end wordt weggelaten, gaat het tot het einde van de array. Ondersteunt ook negatieve stap voor omgekeerde traversatie.

Kan ik meerdere voorwaarden in een filter gebruiken?

Deze versie implementeert een JSONPath-syntaxis-subset die 90% van de dagelijkse gebruiksscenario's dekt. Eenvoudige filters met vergelijkingsoperatoren ==/!=/&gt;/&lt;/&gt;=/&lt;= worden volledig ondersteund. Voor meerdere voorwaarden of complexe scriptuitdrukkingen overweeg gespecialiseerde bibliotheken. De tool toont een duidelijke melding als niet-ondersteunde syntaxis wordt gedetecteerd.

Hoe wissel ik tussen onbewerkte JSON-weergave en gestructureerde tabelweergave?

Klik eenvoudig op de weergavewisselknop in de werkbalk. De JSON-weergave toont de hiërarchische structuur met inspringing en syntaxismarkering. De tabelweergave presenteert extractieresultaten als gestructureerde tabel, waardoor het bekijken en exporteren van tabelgegevens eenvoudiger wordt.

Zijn er ingebouwde voorbeelden om snel te beginnen?

Ja, 8 ingebouwde voorbeelden dekken veelvoorkomende gebruiksscenario's: eenvoudige eigenschapstoegang, array-index, joker, slice, filter enz. Klik op de voorbeeldknop in de werkbalk om snel een voorbeeld te laden en de syntaxis te begrijpen zonder vanaf nul te schrijven.

Hoe werkt de automatische reparatie van JSON-fouten?

Als de geplakte JSON veelvoorkomende syntaxisfouten bevat (afsluitende komma's, ontbrekende aanhalingstekens enz.), probeert de tool automatisch reparatie uit te voeren voordat de query wordt uitgevoerd. Dit voorkomt blokkering door kleine opmaakfouten en verbetert de workflowcontinuïteit.

Wat is de 400ms debounce-vertraging en waarom?

De tool gebruikt 400ms debounce: de query wordt automatisch 400ms na de laatste toetsaanslag uitgevoerd. Dit voorkomt te frequente uitvoeringen tijdens het typen, zorgt voor vloeiend typen en vermijdt onnodige belasting, vooral handig bij het verwerken van grote JSON.

Zijn er sneltoetsen om de efficiëntie te verbeteren?

Ja, verschillende ingebouwde sneltoetsen: Ctrl/Cmd+Enter om query uit te voeren, Ctrl/Cmd+Shift+C om resultaten te kopiëren, Ctrl/Cmd+K om te wissen, Ctrl/Cmd+Y om van weergave te wisselen. Raadpleeg het sneltoetsmenu in de werkbalk voor de volledige lijst.

Hoeveel query's worden opgeslagen in de geschiedenis?

De tool slaat automatisch de laatste 200 query's op in de localStorage van de browser. U kunt geschiedenisitems snel ophalen, opnieuw uitvoeren of verwijderen. De geschiedenisgegevens blijven lokaal in de browser en worden nooit naar servers verzonden.

Worden gegevens naar servers verzonden?

Nee, alle verwerking vindt lokaal plaats in de browser. Ingevoerde JSON en query-expressies verlaten uw apparaat nooit, waardoor absolute privacy van gevoelige testgegevens en bedrijfsinformatie wordt gegarandeerd. Zelfs na het sluiten van de pagina worden geen gegevens op de server bewaard.

Welke editor wordt gebruikt voor JSON-invoer?

De tool integreert de CodeMirror-editor met professionele syntaxismarkering, codevouwing, regelnummers en haakjesparing. Het biedt een IDE-achtige bewerkingservaring, waardoor het invoeren en bewerken van JSON comfortabeler wordt.

Over JSONPath en online zoekopdrachten

JSONPath is een expressietaal voor het opvragen en extraheren van gegevens uit JSON-structuren. Geïnspireerd door XPath voor XML biedt het een manier om de JSON-hiërarchie te doorlopen en velden of waarden nauwkeurig te lokaliseren, vergelijkbaar met hoe SQL-query's databases bevragen. Het is een onmisbaar hulpmiddel geworden voor ontwikkelaars en testers die met API's en JSON-gegevens werken.

Het fundamentele concept van JSONPath is het gebruik van padexpressies om door de JSON-boomstructuur te navigeren. Het wortelsymbool $ vertegenwoordigt het startpunt, vervolgens benadert de puntoperator . onderliggende eigenschappen, en vierkante haken [] benaderen array-elementen op positie. De expressie $.store.book[0].title begint bijvoorbeeld bij de wortel, benadert het store-object, vervolgens de book-array, neemt het eerste element en retourneert de waarde van het title-veld.

Voor arrays ondersteunt JSONPath verschillende toegangsmodi: eenvoudige numerieke indices zoals [0] voor het eerste element, negatieve indices [-1] voor het laatste element zonder de arraylengte te kennen, joker * om met alle elementen overeen te komen, en slice-syntaxis [start:end] voor het extraheren van bereiken van opeenvolgende elementen. Deze functies dekken de overgrote meerderheid van array-toegangsbehoeften in veelvoorkomende scenario's.

De jokeroperator * kan worden gebruikt om met elke eigenschap of elk element overeen te komen. $.store.* retourneert bijvoorbeeld alle directe velden in store, en $.store.book[*] retourneert alle elementen in de book-array. Dit is vooral handig om alle onderliggende elementen te doorlopen zonder expliciete veldnamen te kennen.

De filterfunctie ?() is een krachtig mechanisme voor conditionele gegevensselectie. In filters vertegenwoordigt @ het huidige knooppunt, en vergelijkingsoperatoren ==/!=/&gt;/&lt;/&gt;=/&lt;= kunnen worden gebruikt om elementen op voorwaarde te filteren. $.store.book[?(@.price &lt; 10)] selecteert bijvoorbeeld alle boeken in de book-array waarvan de prijs lager is dan 10: erg handig om snel subsets van gegevens te extraheren die aan criteria voldoen.

Deze tool integreert verschillende functies om de gebruikerservaring te verbeteren: CodeMirror-editor met professionele syntaxismarkering, dubbele weergave JSON/tabel voor aanpasbare resultaatpresentatie, 8 ingebouwde voorbeelden voor snelle start, automatische reparatie van veelvoorkomende JSON-fouten, 400ms debounce voor vloeiende uitvoering tijdens het typen, sneltoetsen voor efficiëntie en 200 lokale geschiedenisitems om eerdere expressies op te halen.

Alle verwerking vindt lokaal plaats in de browser: JSON en query-expressies worden nooit naar servers verzonden, waardoor absolute privacy van gevoelige gegevens zoals API-sleutels, tokens en bedrijfsinformatie wordt gegarandeerd. Dit is vooral belangrijk voor testingenieurs die API-productiereacties met gevoelige gegevens verwerken.

Deze tool implementeert een zorgvuldig geselecteerde JSONPath-syntaxis-subset die 90% van de dagelijkse gebruiksscenario's dekt: eigenschapstoegang, array-indices (positief/negatief), joker *, slice [start:end] en eenvoudige filters ?() met vergelijkingsoperatoren. Geavanceerde functies zoals recursieve afdaling (..), complexe scriptuitdrukkingen en combinaties van meerdere voorwaarden worden in deze versie niet ondersteund, waarbij stabiliteit en eenvoud voor veelvoorkomende toepassingen voorop staan.

术语表

JSONPath
Expressietaal voor het opvragen en extraheren van gegevens uit JSON-structuren, vergelijkbaar met XPath voor XML
$
Wortelsymbool dat het JSON-rootobject of -array vertegenwoordigt, startpunt van elke JSONPath-expressie
@
Huidig knooppunt in filterexpressies, vertegenwoordigt het element dat momenteel wordt verwerkt
.
Kindtoegangsoperator voor toegang tot objecteigenschappen, bijvoorbeeld $.store.book benadert het veld book in store
[]
Array-indexoperator voor toegang tot elementen op positie, [-1] vertegenwoordigt het laatste element
*
Joker die overeenkomt met elke eigenschap of elk array-element, bijvoorbeeld $.store.* retourneert alle velden in store
[start:end]
Array-slice voor het extraheren van een elementbereik van index start tot end (exclusief)
?()
Filterexpressie voor het selecteren van elementen die aan een voorwaarde voldoen, met behulp van vergelijkingsoperatoren
Tabelweergave
Presentatie van extractieresultaten als gestructureerde tabel met kolommen en rijen voor vergemakkelijkte leesbaarheid
400ms Debounce
Wachttijd voor het uitvoeren van query na laatste toetsaanslag, voorkomt overmatige uitvoeringen tijdens het typen
localStorage
Lokale browseropslag voor het opslaan van querygeschiedenis zonder gegevens naar servers te verzenden
CodeMirror
Geïntegreerde code-editorbibliotheek die professionele syntaxismarkering en bewerkingsfuncties biedt

JSONPath-syntaxis-referentietabel

Ondersteunde JSONPath-syntaxis met beschrijvingen en voorbeelden

SyntaxisBeschrijvingVoorbeeld
$Rootobject/-array$
.propertyToegang tot onderliggende eigenschap$.store.book
[n]Array-index (n positief/negatief)$.book[0] / $.book[-1]
*Joker, elk veld/element$.store.*
[start:end]Array-slice$.book[0:2]
?(condition)Conditioneel filter$.book[?(@.price &lt; 10)]

Vergelijkingsoperatoren voor filters

Bruikbare vergelijkingsoperatoren in filterexpressies ?()

OperatorBetekenisVoorbeeld
==Gelijk aan?(@.price == 10)
!=Niet gelijk aan?(@.category != "reference")
&gt;Groter dan?(@.price &gt; 10)
&lt;Kleiner dan?(@.price &lt; 10)
&gt;=Groter dan of gelijk aan?(@.price &gt;= 10)
&lt;=Kleiner dan of gelijk aan?(@.price &lt;= 10)

Sneltoetsentabel

Ingebouwde sneltoetsen om de efficiëntie te verbeteren

SneltoetsActie
Ctrl/Cmd + EnterQuery uitvoeren
Ctrl/Cmd + Shift + CResultaten kopiëren
Ctrl/Cmd + KEditor en query wissen
Ctrl/Cmd + YWisselen tussen JSON- en tabelweergave

Privacy & Security

Alle JSONPath-query's, JSON-bewerkingen en verwerkingen in deze tool worden volledig lokaal in uw browser uitgevoerd. Gegevens worden niet naar servers verzonden, noch op afstand opgeslagen of gecachet. Zelfs bij het verwerken van API-reacties met sleutels, tokens of gevoelige bedrijfsinformatie is het absoluut veilig. Na het sluiten of vernieuwen van de pagina worden de gegevens verwijderd (geschiedenis wordt alleen in uw localStorage opgeslagen).

Authoritative References

Troubleshooting

Geen resultaten geretourneerd / pad niet gevonden

Controleer of veldnamen correct zijn gespeld (hoofdlettergevoelig), of de JSON-structuur overeenkomt met het verwachte pad. Probeer eerst een ingebouwd voorbeeld om de werking te valideren en bouw vervolgens de expressie geleidelijk op vanaf de wortel.

JSON-syntaxisfout in invoer

De tool probeert automatische reparatie van veelvoorkomende fouten. Als reparatie mislukt, controleer dubbele aanhalingstekens voor sleutels en strings, afwezigheid van afsluitende komma na het laatste element, correct gesloten paren van accolades/vierkante haken. Gebruik indien nodig de JSON-reparatietool.

Filterexpressie werkt niet zoals verwacht

Controleer of @ verwijst naar het juiste veld in de array, of vergeleken waarden van het juiste type zijn (getallen zonder aanhalingstekens, strings met dubbele aanhalingstekens). Deze versie ondersteunt eenvoudige filters; meerdere voorwaarden en scripts worden niet ondersteund.

Recursieve afdaling .. werkt niet

Recursieve afdaling (..) wordt in deze versie niet ondersteund. Deze tool implementeert een syntaxis-subset die 90% van veelvoorkomende scenario's dekt. Voor diepe recursieve zoekopdrachten bouwt u expliciete paden niveau voor niveau op.