Command Palette

Search for a command to run...

JS

JSONPath-Tester

Testen Sie JSONPath-Ausdrücke gegen beliebige JSON und sehen Sie sofort die übereinstimmenden Werte und deren Pfade Unterstützt Platzhalter, rekursiven Abstieg, Slices und Filter. 100% clientseitig.

Was ist ein JSONPath-Tester?

Ein JSONPath-Tester wertet einen JSONPath-Ausdruck gegen ein JSON-Dokument aus und gibt jeden Wert zurück, den der Ausdruck auswählt, zusammen mit dem genauen Pfad zu jedem Match. JSONPath ist eine Abfragesprache für JSON, die Art und Weise, wie XPath eine Abfragesprache für XML ist: Sie schreiben einen kurzen Pfad wie $.store.book [*].author und erhalten die Liste der übereinstimmenden Werte zurück, ohne Code zu schreiben Dieses Tool analysiert Ihren JSON, führt den Ausdruck aus und zeigt sowohl die Ergebnisse als auch den normalisierten Pfad jedes einzelnen an.

Der Sinn eines Testers ist Feedback Wenn ein JSONPath-Ausdruck nichts zurückgibt, oder mehr zurückgibt, als Sie erwartet haben, ist das Problem fast immer ein kleines Syntaxdetail: eine fehlende Platzhalterung, der falsche Klammerstil, oder ein Filter, der eine Zeichenfolge mit einer Zahl vergleicht, die Abfrage live gegen reale Daten ausführen, und sehen, welche Knoten es berührt, macht dieses Rätselraten zu einer Prüfung von zwei Sekunden Es ist der gleiche Grund, warum Entwickler einen Regex-Tester neben ihrem Editor offen halten.

Alles läuft in Ihrem Browser Der JSON wird mit dem integrierten JSON-Parser geparst und der Ausdruck wird von einem kleinen Interpreter ausgewertet, der in JavaScript geschrieben ist, also wird nichts hochgeladen, protokolliert oder gespeichert. Das ist wichtig, da JSONPath-Arbeit normalerweise gegen API-Antworten und Konfigurationsdateien erfolgt, die Token, IDs oder Kundendatensätze enthalten, und dieses Tool behält diese Nutzlast auf Ihrem eigenen Computer und arbeitet weiterhin offline, sobald die Seite geladen wurde.

JSONPath ist eine Konvention mit mehreren Implementierungen statt einer einzigen Spezifikation, und sie sind sich an den Rändern nicht einig Filter-Syntax ist der am wenigsten portable Teil, so dass ein Ausdruck, der in einer Bibliothek arbeitet, möglicherweise in einer anderen angepasst werden muss Rekursiver Abstieg ist die teure Operation: er läuft jeden Knoten im Dokument, so dass bei einer großen Datei eine Abfrage, die mit zwei Punkten beginnt, merklich langsamer ist als ein expliziter Pfad.

Um es als JSONPath-Online-Evaluator auszuprobieren, klicken Sie auf Beispiel laden, ersetzen Sie den Ausdruck durch $.store.book [? (@.preis < 10)].title und klicken Sie auf Auswerten. Der Wertemodus gibt ["Sayings of the Century", "Moby Dick"] mit dem Bereich 2 Ergebnisse markiert... Ausgabe auf Pfade umschalten und erneut auf Auswerten klicken, und dieselbe Abfrage gibt $.store.book [0].title und $.store.book [2].title zurück, der Ihnen sagt, dass der Filter die Bücher bei Index 1 und 3 übersprungen hat. Ändern Sie den Ausdruck auf $preis und Sie erhalten fünf Zahlen, weil der rekursive Abstieg.

Wie benutzt man den JSONPath-Tester?

  1. Füge deinen JSON ein

    Fügen Sie ein Objekt oder Array in das JSON-Feld ein oder klicken Sie auf Beispiel für das Buchhandlungsdokument laden. Die Eingabe muss gültig sein. JSON; Es wird ein Analysefehler mit der eigenen Nachricht Ihres Browsers angezeigt, in der normalerweise die Position benannt wird, damit Sie sie beheben können.

  2. Schreiben Sie einen JSONPath-Ausdruck

    Geben Sie einen Pfad wie $.store.book [*].title oder $..Preis ein. Beginnen Sie bei $ für die Wurzel, verwenden Sie Punkte oder Klammern für Kinder und fügen Sie Filter wie [? (@.preis < 10)] hinzu, um nach Wert auszuwählen.

  3. Lies die Streichhölzer

    Klicken Sie auf Auswerten, um den Ausdruck auszuführen; der Bereich Übereinstimmungen listet jeden übereinstimmenden Wert auf und zeigt die Ergebnisanzahl an, Schalten Sie die Ausgabe auf Pfade oder Einträge und klicken Sie erneut auf Auswerten, um zu sehen, woher das jeweilige Ergebnis stammt.

  4. Kopieren Sie das Ergebnis

    Kopieren Sie die übereinstimmenden Werte, die Liste der Pfade oder die vollständigen Pfad- und Werteinträge als JSON, um sie in Ihren Code, Ihre Tests oder Ihre Dokumentation einzufügen.

Hauptmerkmale

  • Vollpfad-Syntax

    Wurzel, Kind, rekursiver Abstieg (..), Platzhalter (*), Array-Index einschließlich Negativindex, Vereinigungen und Slices im Python-Stil werden alle unterstützt, sodass die meisten veröffentlichten JSONPath-Beispiele unverändert ausgeführt werden.

  • Filterausdrücke

    Wählen Sie Knoten nach Wert mit Filtern wie [? (@.price < 10 & @.category == "fiktion")]. Vergleichsoperatoren, Existenzprüfungen und & & / || Kombinationen werden pro Element ausgewertet.

  • Werte, Pfade oder Einträge

    Sehen Sie die übereinstimmenden Werte, den normalisierten Pfad jedes Spiels oder beides zusammen als Einträge. Die Pfadausgabe ist praktisch zum Erstellen des Ausdrucks, den Sie benötigen.

  • Fehlermeldungen löschen

    Ungültige JSON- und fehlerhafte Ausdrücke werden separat mit einer bestimmten Nachricht gemeldet, sodass Sie wissen, ob Sie die Daten oder die Abfrage beheben sollen, anstatt auf ein leeres Ergebnis zu starren.

Frequently Asked Questions

JSONPath ist eine Abfragesprache für JSON, die XPath für XML nachempfunden ist Ein Ausdruck wie $.store.book [0].title beschreibt einen Pfad durch das Dokument, und die Auswertung gibt den Wert oder die Werte auf diesem Pfad zurück Es wird häufig in API-Testtools, Gateways und Konfigurationssystemen verwendet, um Teile einer JSON-Nutzlast zu extrahieren oder abzugleichen.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

jsonpath testerjsonpath evaluatorjson path onlinetest jsonpathjsonpath queryjsonpath filterjsonpath expressionquery jsonjsonpath onlinejsonpath online evaluatorjsonpath evaluator onlinejsonpath filter examples