何もブラウザの外に出ません。
JSONをスキーマに照らして確認し、JSONPathで値を取り出し、リアルなテストデータを作成します。すべてブラウザ上で行われます。何もアップロードされないため、非公開のデータにも安全です。無料で、アカウントも不要です。
JSONツールキットの使い方
- 「検証」「JSONPath」「モックデータ」のタブを開きます。「例を読み込む」で、動作する一式が表示されます。
- 検証:JSONデータとJSON Schemaを貼り付け、「両方を整える」で整形して、一覧表示された問題を読みます。
- JSONPath:JSONを貼り付け、JSONPath式を入力して、結果を読みます。「パスを表示」で、各一致の位置が追加され、「結果をコピー」で持ち出せます。
- モックデータ:スキーマかサンプルのレコードを貼り付け(または代わりに「サンプルのレコードを試す」)、「レコード数」と「シード」を設定して、「出力」を選びます:JSON配列、NDJSON(1行に1つ)、CSV。
- 「コピー」または「ダウンロード」を押してください。
バリデーターが確認するもの
JSON Schemaのdraft 2020-12とdraft 07の中心的なキーワード:type、properties、required、additionalProperties、patternProperties、items、prefixItems、enum、const、数値と長さの制限、pattern、uniqueItems、contains、oneOf、anyOf、allOf、not、if/then/else、#/$defs/addressのようなローカルな定義への$ref。確認される形式は、email、uri、date、time、date-time、uuid、ipv4、ipv6、hostnameです。すべての問題が、$.items[2].priceのようにパス付きで一覧表示されるため、素早く見つけられます。
JSONPathの概要
$はルート、.nameはキーを選び、..nameは任意の深さで検索し、*はすべてに一致し、[0]と[-1]は位置で選び、[0:3]はスライスを取ります。[?(@.price < 10)]のようなフィルターは、テストに合格した項目を残します。==、!=、<、>で比較し、=~ /text/iで正規表現に一致させ、[?(@.isbn)]でキーが存在するかを確認し、&&と||でテストを組み合わせられます。
リアルなモックデータ
スキーマを貼り付けると、それに合格するレコードが得られ、数値は最小と最大の範囲内、文字列は長さ、パターン、形式に合い、値は各enumから選ばれます。代わりにサンプルのレコードを貼り付けると、その形がコピーされます。フィールド名が値の目安になるため、email、first_name、city、price、created_at、is_activeには、もっともらしい内容が入り、メールは、同じレコードの名前に合います。
ヒント
- 同じシードを使うと、同じモックデータが再び得られ、テストを再現できます。
- 検証に失敗したら、最初のエラーを修正して、もう一度確認してください。1つのミスが、複数のエラーを引き起こすことがあります。
- 知っているキーを、大きなファイルから探すには、JSONPathの
$..nameから始めてください。 - 1行に1レコードを読むツール向けには、NDJSONの出力を使ってください。
こんな方に
APIをテストする開発者、エクスポートからフィールドを取り出すアナリスト、JSONを学ぶ学生。関連ツール:JSONから型へ、形式変換、差分チェッカー。
よくある質問
JSONはアップロードされますか?
いいえ。すべてブラウザ上で実行されます。
どのスキーマのバージョンに対応していますか?
上記のキーワードに対して、Draft 2020-12とdraft 07に対応しています。
モックデータは本物ですか?
いいえ。作り物のデータなので、共有やテストで安全に使えます。