JSON パスファインダー
JSON 文書内のすべてのパスを JSONPath、JavaScript、jq の記法で一覧表示。パスをクリックして値を確認したり、パスを入力して値を調べたりできます。ブラウザ内で動作。
すべてブラウザ内で実行されます。データがアップロードされることはありません。
関連ツール
すべて表示JSON パスファインダーとは?
JSON パスファインダーは、JSON 文書内のすべての値へのパスを表示し、パスから値を調べられます。パスは、JSONPath($.store.book[0].title)、JavaScript(data.store.book[0].title)、jq(.store.book[0].title)の記法で表示でき、そのままコードに貼り付けられます。
JSON パスファインダーの使い方
- JSON 入力 欄に JSON を貼り付けます(または サンプルを読み込む をクリックします)。
- すべてのパス の表を見ます。絞り込みボックスでパスや値を検索できます。
- 行をクリックすると、そのパスが パス 欄に入り、値が表示されます。
- または
$.store.book[1].titleのようなパスを入力して、直接調べます。 - パスの記法 を切り替えて、JavaScript や jq の形式でパスをコピーします。
例
{"store":{"book":[{"title":"A","price":8},{"title":"B","price":12}]}}
Path: $.store.book[1].title "B"
パスの表には、$ から $.store.book[1].price までの 9 つのパスが並びます。
JSON パスファインダーを使うべき場面
大きな API レスポンスに見えるフィールドへのパスを探す、コード用のアクセサーを生成する、値がどこにあるか確認する場合に使います。複数の値を返すクエリ(ワイルドカード、フィルター、再帰検索)には、JSON クエリを使ってください。
JSON パスファインダーの仕組み
JSON は、数値を書かれたままに保つ厳密なパーサーで解析されます。ツリーは深さ優先でたどられ、すべてのノードの JSONPath が作られます。識別子のようなキーにはドット記法、それ以外のキーには引用符付きのブラケット記法($['first name'])、配列の要素には [index] が使われます。コンテナはサイズ付きで一覧表示されます。検索は、$ の有無にかかわらず JSONPath、jq 形式の先頭のドット、ブラケット記法を受け付け、1 つの正確な位置に解決します(ワイルドカードやフィルターはなし。それらには JSON クエリを使います)。表には一度に最大 500 行が表示されます。大きな文書では絞り込みを使ってください。
一般的な使用例
- 深くネストした API のフィールドの JavaScript アクセサーを見つける
- 監視やテストのアサーション用に JSONPath を書く
- 見慣れない JSON の構造を調べる
- シェルスクリプト用に jq のパスを取得する
セキュリティ注意事項
すべてブラウザ内でローカルに処理され、貼り付けたコードがアップロードされることはありません。
よくある質問
どのパス記法を使えばよいですか?
JSONPath を受け付けるツールには JSONPath、コードには JavaScript、コマンドラインには jq を使います。
[*] のようなワイルドカードは使えますか?
ここでは使えません。ファインダーは 1 つの正確なパスに解決します。ワイルドカードやフィルターには、JSON クエリツールを使ってください。
キーにスペースやドットが含まれる場合は?
$['first name'] のように、ブラケット記法で書かれます。