Command Palette

Search for a command to run...

JS

JSONPath テスター

JSONPath 式を任意の JSON に対してテストし、一致した値とそのパスを即座に確認します。ワイルドカード、再帰降下、スライス、フィルターをサポートします。 100% クライアント側。

JSONPathテスターとは何ですか?

JSONPath テスターは JSON ドキュメントに対して JSONPath 式を評価し、式が選択したすべての値を、それぞれの一致する正確なパスとともに返します。 JSONPath は JSON のクエリ言語であり、XPath が XML のクエリ言語であるのと同じように、$.store.book [*].author などの短いパスを記述し、コードを記述せずに一致する値のリストを取り戻します。このツールは JSON を解析し、式を実行し、結果と各式の正規化されたパスの両方を表示します。

テスターのポイントはフィードバックです JSONPath 式が何も返さない、または予想以上を返す場合、問題はほとんどの場合、小さな構文の詳細です: ワイルドカードが欠落しているか、ブラケット スタイルが間違っているか、文字列を数値と比較するフィルターです クエリを実際のデータに対してライブで実行し、どのノードに接触するかを確認すると、その推測が 2 秒のチェックに変わります。開発者が regex テスターをエディターの隣で開いたままにするのと同じ理由です。

すべてがブラウザで実行されます。 JSON は、組み込みの JSON パーサーで解析され、式は JavaScript で書かれた小さなインタプリタによって評価されるため、アップロード、ログ記録、保存されるものは何もありません。 JSONPath の動作は通常、トークン、ID、または顧客レコードを運ぶ API 応答および構成ファイルに対して発生し、このツールはそのペイロードを自分のマシンに保持し、ページがロードされるとオフラインで動作し続けるため、これは重要です。

JSONPath は単一の仕様ではなく複数の実装を持つ規則であり、エッジで意見が異なります。 filter 構文は移植性が最も低い部分であるため、あるライブラリで動作する式は別のライブラリで調整する必要がある場合があります。 recursive descent は高価な操作です。ドキュメント内のすべてのノードをウォークするため、大きなファイルでは 2 つのドットで始まるクエリは明示的なパスよりも著しく遅くなります。

JSONPath オンライン評価者として試すには、 サンプルを読み込む をクリックし、式を $.store.book [?(@.price < 10)].title に置き換えて評価をクリックします。 values モードは ["Sayings of the Century", "Moby Dick"] を返し、ペインに 2 件の結果がマークされています。出力をパスに切り替えて再度評価をクリックすると、同じクエリで $.store.book [0].title と $.store.book [2].title が返されます。これは、フィルターがインデックス 1 と 3 でブックをスキップしたことを知らせます。式を $...price に変更すると、再帰降下も自転車に到達するため、5 つの数値が得られます。

JSONPathテスターの使い方は?

  1. json を貼り付けます

    オブジェクトまたは配列をJSONボックスに貼り付けるか、書店文書のサンプルを読み込むをクリックします。入力は有効なJSONでなければなりません; 解析エラーはブラウザ独自のメッセージで表示され、通常は位置の名前が付けられるため、修正できます。

  2. JSONPath 式を書き込む

    $.store.book [*].title や $...price などのパスを入力します。ルートの $ から開始し、子にはドットまたは括弧を使用し、[?(@.price < 10)] などのフィルターを追加して値で選択します。

  3. マッチを読んで

    Evaluate をクリックして式を実行します; Matches ペインにはマッチしたすべての値がリストされ、結果カウントが表示されます。 「Output」をパスまたはエントリに切り替えて「Evaluate」をもう一度クリックすると、それぞれの結果がどこから来たのかを確認できます。

  4. 結果をコピーする

    一致した値、パスのリスト、またはパスと値の完全なエントリを JSON としてコピーして、コード、テスト、またはドキュメントに貼り付けます。

主な機能

  • フルパス構文

    ルート、子、再帰降下 (...)、ワイルドカード (*)、負のインデックスを含む配列インデックス、結合、および Python スタイルのスライスはすべてサポートされているため、公開された JSONPath の例のほとんどは変更せずに実行されます。

  • 式をフィルター

    [?(@.price < 10 && @.category == "fiction")] などのフィルターを使用して値によってノードを選択します。比較演算子、存在チェック、および && / ||組み合わせは要素ごとに評価されます。

  • 値、パス、またはエントリ

    一致した値、すべての一致の正規化されたパス、またはその両方をエントリとして一緒に参照してください。パス出力は、必要な式を構築するのに役立ちます。

  • エラーメッセージをクリアします

    無効な JSON 式と不正な式は特定のメッセージとともに個別に報告されるため、空の結果を見つめるのではなく、データを修正するかクエリを修正するかを知ることができます。

Frequently Asked Questions

JSONPath は、XML 用の XPath をモデルにした JSON のクエリ言語です。 $.store.book [0].title のような式は、ドキュメントを通るパスを記述し、それを評価するとそのパスの値が返されます。 API テスト ツール、ゲートウェイ、構成システムで、JSON ペイロードの一部を抽出または照合するために広く使用されています。

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