JSON を素早く検証する: 手順別の実践ポイント

2025-04-16

設定をマージする前やデータを取り込む前に、まず JSON が有効か確認しましょう。この記事では代表的な方法を比較し、日常運用向けのワークフローを示します。

構文検証と構造検証の違い

構文検証は引用符、括弧、許可された型を確認します。JSON Schema はフィールド名、型、必須項目を検証しますが、まず構文が通っている必要があります。

組み込みパーサーを使う

JavaScript の JSON.parse、Python の json.loads、Java の Jackson などはスクリプト用途に最適ですが、デバッグ時はバイト位置を行番号へ自分で対応づける必要があります。

try {
  const data = JSON.parse(raw);
} catch (e) {
  console.error(e.message);
}

コマンドライン検証

jq: cat data.json | jq . が成功すれば構文は有効、失敗時は parse error が表示されます。

python -m json.tool file.json は CI で設定ファイルを検査する際に便利です。

オンライン検証(日常デバッグ向け)

API レスポンス本文やログ断片を貼るだけで即座に確認できます。ツールはブラウザ内で実行され、データはアップロードされません。

見落としやすいポイント

コンソールのオブジェクトリテラルは JSON ではありません。JSON Lines は 1 行ずつ処理が必要です。UTF-8 BOM は先頭キーを壊すことがあります。

推奨 API ワークフロー

1. まずオンラインで構文検証。2. 整形したインデントでネストを確認。3. ドキュメントやスキーマと比較。4. 再利用用の fixture を保存。