JSON オンラインフォーマット

ローカル処理
app.formatter.view

次の方法でも #data={"name":"Ada"} または #url=... データを流し込めます。読み取り後はアドレスバーから削除されます。

1行に潰れた API レスポンスを読みやすい構造に展開します。貼り付け後に構文検証、インデント整形、必要なら Key 並べ替え。すべて現在のタブで完了し、本番ペイロードを第三者サイトへ送りたくないデバッグに向いています。Network パネルからコピーした圧縮 JSON や、ログの1行ペイロードもそのまま貼って階層を確認できます。

自動整形

オブジェクト、配列、入れ子階層を認識し、2 / 4 スペースまたは Tab でインデントします。深いほどインデントが同階層のフィールド揃えに役立ち、括弧を目で数える必要が減ります。

エディタの Prettier / 言語サービスに近い結果ですが、ファイル作成やプラグインは不要で、レスポンスを一時的に見る用途に向いています。

構文チェック

括弧の不一致、カンマの不足や余剰があると入力側で止まりエラーを出します。単引用符、引用符なしのキー名、JS オブジェクトリテラルからコピーした末尾カンマもよくある問題です。

元テキストが JSON5(コメント付き)なら、先に JSON5 ツールで標準 JSON にしてからフォーマットしてください。

アドレスバーへ流し込み

次を使えます: #data={...} または #url= ページを開くと入力され、読み取り後はアドレスバーから消えます。ドキュメント、チケット、スクリプトから共有リンクを組み立て、相手が開けば同じデータを見られます。

リモート #url= ブラウザの CORS 制限があります。本サイトの静的ファイルか、CORS を許可した URL だけ取得に成功します。

入力(圧縮後)
 {"user":{"id":1001,"name":"太郎","roles":["admin","editor"]}} 
フォーマット結果
{
  "user": {
    "id": 1001,
    "name": "张三",
    "roles": [
      "admin",
      "editor"
    ]
  }
}
フィールド値は変わりますか?

変わりません。空白と改行だけ調整します。「Key を並べ替え」をオンにしたときだけオブジェクトキーの順が変わり、値はそのままです。

圧縮ツールとの違いは?

フォーマットは読むためのもの。 圧縮 は転送向けです。両者は行き来できます。

データはアップロードされますか?

しません。解析と整形は現在のブラウザメモリ内で完了し、タブを更新または閉じると内容は消えます。

どのくらいのサイズまで向いていますか?

数 MB 以内なら通常問題ありません。約 2 MB を超えると遅くなることがあり警告を出します。10 MB 超は分割するか、 jq などのローカル CLI を使ってください。

おすすめの手順

  1. API、ログ、クリップボードから元の JSON を左側の入力欄に貼るか、「サンプルを読み込む」で画面に慣れます。
  2. 構文が通ったら 2 スペース、4 スペース、Tab を選びます。別の文書と比較するときは「Key を並べ替え」をオンにします。
  3. 「コピー」で整形結果をエディタ、チケット、テストケースへ戻します。本番では圧縮ページで空白を除いてください。
  4. 構造が深いときはツリー表示へ。一部のフィールドだけ抜き出したいときは JSONPath を使います。

結合デバッグでは「先にフォーマットして構造を把握し、その後 Diff や YAML 変換」がおすすめです。圧縮1行のままフィールドを直すより階層を見逃しにくいです。