JSONPath Evaluator Online
Teste einen JSONPath-Ausdruck gegen dein JSON und sieh die Treffer live, direkt in deinem Browser. Deine Daten bleiben auf deinem Gerät.
Dein JSON wird lokal in deinem Browser geparst und abgefragt und nie hochgeladen, aber vermeide es, sensible Produktionsdaten in irgendein Online-Tool einzufügen.
Musst du zuerst den ganzen Baum lesen? Probiere den JSON Viewer.
Über JSONPath Evaluator
Dieser JSONPath Evaluator lässt dich ein JSON-Dokument mit einem JSONPath-Ausdruck abfragen und die Treffer beim Tippen aktualisiert beobachten. Füge ein beliebiges JSON-Objekt oder -Array ein, gib einen Pfad wie $.store.book[*].author, $..price oder $.items[?(@.active)] ein, und das Tool zeigt, wie viele Knoten getroffen haben, die getroffenen Werte als verschönertes JSON und einen Umschalter, um stattdessen die JSON Pointer zu sehen. Als JSONPath Tester unterstützt es die volle Syntax: die $-Wurzel, Kindzugriff per Punkt und Klammer, den ..-Operator für rekursiven Abstieg, [*]-Wildcards, Array-Slices, Unions und Filterausdrücke mit @ und Vergleichen. Klicke auf eines der Beispielausdrücke, um es in das Abfragefeld zu übernehmen. Ungültiges JSON und fehlerhafte Pfade erzeugen einen klaren Fehler statt eines leeren Bildschirms. Alles läuft in deinem Browser, sodass das ausgewertete JSON auf deinem Gerät bleibt.
Funktionen
- Live-Ergebnisse: Trefferanzahl, Werte und Pfade aktualisieren sich, während du das JSON oder den Ausdruck bearbeitest
- Wechsle zwischen getroffenen Werten (verschönertes JSON) und dem JSON-Pointer-Pfad für jeden Treffer
- Unterstützt rekursiven Abstieg ($..), Wildcards ([*]), Array-Slices, Unions und Filterausdrücke
- Filtere nach Knoteninhalten mit Prädikaten im Stil [?(@.price < 10)] oder [?(@.active)]
- Anklickbare Beispielausdrücke, die das Abfragefeld mit einem Tipp füllen
- Eindeutige Fehler für ungültiges JSON versus einen ungültigen JSONPath-Ausdruck
- Kopiere die getroffenen Werte oder die Liste der Pfade mit einem Klick
- Behandelt tief verschachtelte Objekte und große Arrays, ohne die Seite zu verlassen
So verwendest du JSONPath Evaluator
- Füge dein JSON in das JSON-Panel auf der linken Seite ein oder tippe es ein.
- Gib einen JSONPath-Ausdruck in das Abfragefeld ein oder klicke auf eines der Beispiele.
- Lies die getroffenen Werte auf der rechten Seite und prüfe die Trefferanzahl darüber.
- Wechsle zu Pfade, um den JSON Pointer für jeden Treffer zu sehen, dann kopiere die Ergebnisse.
Beispiel
Eingabe
$.store.book[?(@.price < 10)].title
Ausgabe
[
"Sayings of the Century",
"Moby Dick"
]
Ein Filterausdruck behält nur Bücher, die günstiger als 10 sind, und projiziert dann jeden Titel.
Häufige Fehler & Fehlerbehebung
- Das Ergebnis-Panel zeigt "Invalid JSON", bevor du einen Pfad geschrieben hast. — Behebe zuerst das JSON im linken Panel – ein nachgestelltes Komma, einfache Anführungszeichen oder ein Schlüssel ohne Anführungszeichen verhindern das Parsen. Lass es durch einen JSON Formatter laufen, wenn du dir unsicher bist.
- Ein Filter wie [?(@.price < 10)] liefert keine Treffer, obwohl das Feld existiert. — Filter vergleichen rohe Werte, also stelle sicher, dass das Feld eine Zahl und kein String ist und dass @ sich auf jedes Array-Element bezieht. Setze String-Vergleiche in Anführungszeichen, z. B. [?(@.color=="red")].
- $.book[0] liefert nichts, aber $..book[0] funktioniert. — $. folgt nur dem exakten Pfad von der Wurzel. Wenn book verschachtelt ist, schreibe entweder den vollständigen Pfad aus oder verwende den ..-Operator für rekursiven Abstieg, um in jeder Tiefe zu suchen.
Häufig gestellte Fragen
- Was ist der Unterschied zwischen $.. und $. in JSONPath?
- $. folgt einem exakten Pfad Ebene für Ebene von der Wurzel, sodass $.store.book nur einen book-Schlüssel direkt unter store trifft. $.. ist der Operator für rekursiven Abstieg: $..book findet jeden book-Schlüssel in jeder Tiefe des Dokuments. Verwende $.., wenn du nicht sicher bist, wo ein Feld liegt.
- Unterstützt dieser JSONPath Evaluator Filterausdrücke?
- Ja. Filter verwenden die [?(...)]-Syntax, wobei @ der aktuelle Knoten ist, zum Beispiel $.items[?(@.active)] oder $.store.book[?(@.price < 10)]. Du kannst Zahlen, Strings und Booleans vergleichen und Bedingungen mit && und || kombinieren.
- Was zeigt der Pfade-Umschalter?
- Er gibt für jeden Treffer einen JSON Pointer statt des Werts zurück – ein String wie /store/book/0/author, der den Knoten im Dokument lokalisiert. Pointer sind nützlich, wenn du wissen musst, wo ein Wert liegt, nicht nur was er ist.
- Warum trifft mein Ausdruck mehr Ergebnisse als erwartet?
- Wildcards und rekursiver Abstieg sind gierig: [*] trifft jedes Element eines Arrays oder jede Eigenschaft eines Objekts, und $.. durchläuft den ganzen Baum. Grenze das Ergebnis mit einem bestimmten Schlüssel, einem Index, einem Array-Slice wie [0:2] oder einem Filter ein.
- Kann ich mehrere Array-Elemente auf einmal auswählen?
- Ja. Verwende eine Union wie [0,2], um bestimmte Indizes zu wählen, oder einen Slice wie [1:3] für einen Bereich und [-1:] für das letzte Element. Beide funktionieren auf jedem Array, das vom Pfad erreicht wird.
- Wird mein JSON irgendwohin gesendet, wenn ich eine Abfrage ausführe?
- Nein. Der Ausdruck wird vollständig in deinem Browser ausgewertet, sodass das eingefügte JSON und die ausgeführten Abfragen lokal auf deinem Gerät verarbeitet und nicht hochgeladen werden.
Verwandte Tools
- JSON-Formatierer — JSON verschönern, minimieren und validieren – mit Fehlerposition.
- JSON-Viewer — Text- und einklappbare Baumansicht mit Ein-/Ausklappen und Knotenpfaden.
- JSON Flatten / Unflatten — Flache verschachteltes JSON zu Schlüsseln in Punktnotation, oder mach es wieder rückgängig.
- JSON Diff — Vergleiche zwei JSON-Dokumente und sieh einen strukturellen Diff.
- JSON zu CSV — Konvertiere ein Array flacher JSON-Objekte in CSV.
- YAML ↔ JSON — Konvertiere YAML zu JSON und zurück.
Alle ArrayKit-Tools