JSONPathでJSONを検索する
$.store.book[*].titleで全タイトルを取得できます。実際のJSONに対してJSONPath式を試して何が一致するか確認。
このガイドで使う道具
やりたいこと
APIはネストしたJSONを渡してきます。JSONPathはその中に届くクエリ言語です。実際のペイロードで式を試す方が、ブラケット構文の推測より確実です。
検索する
JSONを貼り、パスを書いて実行します。各一致は値と一緒に自分のパス($.store.book[0].titleのような)を表示します。アドレスは値と同じくらい役に立ちます。
- ..nameはどこへでも潜ります。$..authorは深さに関わらず全authorキーを拾います。
- [0:2]は配列のスライスで、Pythonのように先頭2要素です。
具体例
storeの塊に$.store.book[*].titleを投げると4件が返り、パスが固定参照に必要な配列インデックスを教えてくれます。
対応範囲
仕様のサブセットです。[?()]フィルタ・複数インデックスの和・スクリプト式はありません。JSONは4MB、一致は500件まで。