Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
JSONPath — http://goessner.net/articles/JsonPath/ からの JSONPath のフォーク | Kitploit
ツール/GitHubGitHub/jsonpath-plus/jsonpath
汎用ユーティリティ静的分析コード分析スクリプトと自動化ユーティリティとフレームワーク
GitHubjsonpath-plus/jsonpath

JSONPath

http://goessner.net/articles/JsonPath/ からの JSONPath のフォーク

リポジトリを見る
1.2k200338日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

npm

testing badge coverage badge

Known Vulnerabilities

Licenses badge

Node.js CI status

(開発依存関係のライセンスも参照してください)

JSONPath Plus

JSONドキュメント(およびJavaScriptオブジェクト)からデータを分析、変換、選択的に抽出します。

jsonpath-plusは、元の仕様を拡張していくつかの追加演算子を加え、元の仕様では明示されていなかったいくつかの動作を明示します。

ブラウザデモまたはRunkit (Node)をお試しください。

注意: このプロジェクトは現在積極的にメンテナンスされていません。十分に文書化されたPRや簡単な更新は受け入れる可能性がありますが、私たち自身で修正を行ったり新機能を追加したりする予定はありません。

機能

  • 元のjsonpath仕様に準拠
  • 元の仕様にはない便利な追加や詳細化:
    • 一致するアイテムの親を取得する^
    • 一致するアイテムのプロパティ名を(配列として)取得する~
    • 以下を取得するための型セレクタ:
      • 基本的なJSON型: @null()、@boolean()、@number()、@string()、@array()、@object()
      • @integer()
      • 複合型@scalar()(JavaScriptオブジェクトをクエリする際にundefinedや非有限数をはじめ、すべての基本的な非オブジェクト/非関数型も受け入れます)
      • ユーザー定義のotherTypeCallbackと組み合わせて使用できる@other()
      • 非JSONのJavaScriptオブジェクトをクエリする際に使用できる非JSON型(@undefined()、@function()、@nonFinite())
    • フィルタ内の@path/@parent/@property/@parentProperty/@root 省略セレクタ
    • エスケープ
      • 残りのシーケンスをエスケープする`
      • フィルタ内のプロパティ名の特殊文字をエスケープする@['...']/?@['...']構文
    • $..(すべての親コンポーネントを取得)を文書化
  • ESMおよびUMDエクスポート形式
  • クエリされた値に加えて、値へのパスやポインタ、親オブジェクトや親プロパティ名(変更を可能にするため)など、さまざまなメタ情報を返すことができます。
  • パス、配列、ポインタ間の変換ユーティリティ
  • 元の仕様で許可されている評価を防止するオプション、または評価される値にサンドボックスを提供するオプション。
  • 結果が得られたときに結果を処理するコールバックのオプション。

ベンチマーク

jsonpath-plusは、json-querying-performance-testingによると、他のjsonクエリライブラリと比較して、大規模および小規模なデータセットの両方で一貫して高性能です。これらの結果は、プロジェクトを自分で実行し、さらにパフォーマンスケースを追加することで確認できます。

インストール

npm install jsonpath-plus

セットアップ

Node.js

const {JSONPath} = require('jsonpath-plus');

const result = JSONPath({path: '...', json});

ブラウザ

ブラウザで使用する場合は、dist/index-browser-umd.cjs を直接インクルードできます。Browserify の魔法は必要ありません:

<script src="node_modules/jsonpath-plus/dist/index-browser-umd.cjs"></script>

<script>

const result = JSONPath.JSONPath({path: '...', json: {}});

</script>

ESM(モダンブラウザ)

ES6モジュールインポート(モダンブラウザ向け)も使用できます:

<script type="module">

import {
    JSONPath
} from './node_modules/jsonpath-plus/dist/index-browser-esm.js';

const result = JSONPath({path: '...', json: {}});

</script>

ESM (バンドラー)

または、JavaScript をバンドルしている場合 (例えば Rollup を使用)、以下を使用するだけで、 mainFields にはブラウザビルド用に browser を含める必要があることに注意してください (Node の場合、 デフォルトで module をチェックするので問題ありません):

import {JSONPath} from 'jsonpath-plus';

const result = JSONPath({path: '...', json});

使用方法

利用可能な完全なシグネチャは次のとおりです:

const result = JSONPath([options,] path, json, callback, otherTypeCallback);

引数 path、json、callback、otherTypeCallback は、options 上で(利用可能な他のプロパティとともに)代わりに表現することもできます。

result には見つかったすべての項目が含まれる(オプションで配列にラップされる)のに対し、callback は、各項目が発見されるたびに何らかの操作を実行したい場合に使用でき、コールバック関数は結果内で見つかる独立した項目の数に応じて 0 回から N 回実行されることに注意してください。JSONPath で利用可能な引数の詳細については、以下のドキュメントを参照してください。

API ドキュメントも参照してください。

プロパティ

options オブジェクトまたは evaluate メソッド(最初の引数として)に指定できるプロパティには、以下が含まれます:

ツールをダウンロード