JSONフォーマッター&バリデーター

APIレスポンス、設定ファイル、ログ行のJSONを貼り付けて構文を検証し、読みやすいインデントで整形するか、本番向けにミニファイします。

JSONの整形と検証方法

1. 生のJSONを入力欄に貼ります(必要なら断片を包みます)。
2. 標準の2スペースインデントで整形するか、1行にミニファイします。
3. パーサーが報告する検証エラーを直します。末尾カンマや単一引用符が多いです。
4. きれいにした出力をIDE、Postman、デプロイ設定にコピーします。

JSON整形の例

APIレスポンスの整形

ミニファイされた `{"id":42,"name":"Ada","roles":["admin","user"]}` は、コードレビューで読みやすい差分になる複数行のインデントJSONになります。

無効なJSONを見つける

`{"status": "ok",}` は失敗します。最後のプロパティの後の末尾カンマです。`}` の前のカンマを除くと検証できます。

HTTPボディ向けミニファイ

4 KBの整形設定はミニファイで約30%縮みます。サイズが重要なときに便利ですが、gzipなら回線上はどちらも小さくなりがちです。

このツールを使うとき

APIが1行のJSON塊を返し、入れ子のフィールドを読む必要があるとき。
CI設定やpackage.jsonのパースが失敗し、悪い行を切り分けたいとき。
バグ報告で共有する前にペイロードを整理したいとき(まず秘密情報を伏せる)。

整形JSONでAPIをデバッグする

fetchが200を返してもデータが違うとき、整形すると入れ子が見えます。`user.id` が欠けているのか名前が変わったのか。git diffで整形前後のレスポンスを比べます。GraphQLではerrors配列が `data` の隣にあることが多く、インデントで部分成功が分かります。共有録画でも、ローカルツールであってもAuthorizationヘッダーとトークンは貼る前に伏せてください。

よくある質問

JSONが無効になる原因は?

引用なしのキー、単一引用符、末尾カンマ、コメント(非標準)、NaN/Infinityリテラル、括弧の不一致。

キーの順序は保たれますか?

はい。パースしたオブジェクトは、パース時の挿入順でキーを再シリアライズします(ES2015+の挙動)。

秘密情報を含むJSONを整形できますか?

処理はローカルで、クラウドのフォーマッターより安全ですが、共有画面では本番キーの貼り付けは避けてください。

整形とミニファイの違いは?

整形は人向け、ミニファイは保存や埋め込みスクリプト向け。有効なら意味は同じです。

JSONを自動修正しますか?

エラーを報告します。末尾カンマなどは手動で直します。壊れたデータを推測はしません。