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 パスファインダーの使い方

  1. JSON 入力 欄に JSON を貼り付けます(または サンプルを読み込む をクリックします)。
  2. すべてのパス の表を見ます。絞り込みボックスでパスや値を検索できます。
  3. 行をクリックすると、そのパスが パス 欄に入り、値が表示されます。
  4. または $.store.book[1].title のようなパスを入力して、直接調べます。
  5. パスの記法 を切り替えて、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'] のように、ブラケット記法で書かれます。

おすすめの次のステップ

他のカテゴリを見る