JSONリーダーとは?
生のJSONを読むのは、速記で書かれた買い物リストを読むようなものです — できますが、データにたどり着く前に構文を解読するために頭を使わなければなりません。JSONリーダーは構文を道から退けます。任意のJSONを貼り付ければ、キーにラベルが付き、値が独立した、読みやすいテーブル形式のレイアウトが得られます。
誰かがJSONファイルを渡してきて「中身を教えて」と言ってくる、そんな場面のためのツールです。フォーマッターに通してから300行ものインデントされたテキストをスクロールする代わりに、ここに貼り付けて一つずつフィールドを読めばよいのです。リーダーは配列を行に平坦化し、ネストしたオブジェクトをクリック可能なテーブルに変え、気になるフィールドにすぐ飛べるインラインフィルターを用意します。JSONは機械向けに最適化されたテキスト形式ですが、このリーダーは肩越しに読む人間向けに最適化されています。
サインアップ不要、ファイルアップロード不要、データはどこにも送信されません。パースはブラウザー内でローカルに実行されます。貼り付けて、読んで、タブを閉じて — 終わりです。
このツールでのJSONの読み方
短い手順です。使うボタンはすべて、この説明のすぐ上のページにあります。
JSONを貼り付ける
左のエディターにJSONをドロップします。どこからでも構いません — ファイルに保存したcurlレスポンス、Webhookのペイロード、Kafkaメッセージの本文、NoSQLデータベースのエクスポートなど。手元にJSONがなく、とりあえず試したいだけならサンプルをクリック。
{"invoice": {"number": "INV-2025-0417", "issuedOn": "2025-04-17", "payer": {"name": "Acme Logistics GmbH", "country": "DE"}, "lineItems": [{"description": "Freight — Hamburg to Rotterdam", "amount": 1250.00}, {"description": "Customs handling", "amount": 180.00}], "totalEUR": 1430.00}}JSONに構文エラーがあれば、エディター下に該当行を指すエラーメッセージが表示されます。
パース結果を読む
貼り付けると同時に、右パネルが再描画され、すべてのキーにラベルが付き、すべての値が専用セルに並びます。請求書のような単一オブジェクトなら、キーは行として表示されます:number、issuedOn、payerなど。レコードの配列なら、各レコードが行となりキーが列になります。ネストした構造(payerやlineItemsなど)はインラインで独自のミニテーブルに展開されます — ネストしたメールスレッドを開くようにクリックしてたどれます。パーサーはRFC 8259のルールに従うので、有効なJSONであれば正しく表示されます。
特定のフィールドを素早く見つける
各列にはヘッダーの下にフィルター入力があります。国列にDEと入れてドイツの請求書を絞り込み、説明列にCustomsと入れて手数料を探し、日付列に2025と入れて年で絞る。フィルターは複数列で同時に働きます — 2つの欄に入力すれば、両方に一致する行だけが残ります。数百件のレコードから特定の1件を探すときに便利です。
必要なら向きを切り替える
キーを上から下に読む方が左から右より楽な場合があります — 特に15以上のフィールドを持つレコードです。メインをクリックすると外側のテーブルが転置されます(キーが行、値が列にわたる)。ネストをクリックすると内側のテーブルにも同じ処理が適用されます。データは同じ、ただその瞬間に目が求める並びに置き換わるだけです。
コピー、共有、またはエクスポート
単一の値を取りたい場合は、編集を押してからセルをダブルクリックして直接コピーします。ビューをチームメンバーに渡すには共有を押せば、お好みの有効期限(1時間、1日、1週間)の短縮リンクが得られます。スプレッドシートで見たい?Excelを押して.xlsをダウンロードし、Excel、Googleスプレッドシート、LibreOffice Calcで開けます。
リーダーが役立つ場面
Webhookペイロードを読み解く
Stripe、GitHub、ShopifyなどのサービスはネストしたJSONを詰め込んだWebhookを送ってきます。ログから1件取り出して最後まで読む必要がある — イベントは何と言っていたか、返金フラグはあったか、どの顧客が発火させたか?貼り付けて、読んで、答えを得る。
設定ファイルを読む
ビルドツール、リンター、デプロイスクリプト用の400行の<code>.json</code>は威圧的に感じられます。テーブルとして読めば、どのセクションが存在し、どれが入力済みで、どれがデフォルトを継承しているかがわかります — テキストエディターでインデントの階層を数えるよりはるかに楽です。
シリアライズされた状態のデバッグ
フロントエンドアプリはシリアライズされた状態を<a href="https://developer.mozilla.org/ja/docs/Web/API/Window/localStorage" target="_blank" rel="noopener">localStorage</a>やsessionStorageにJSONとしてしばしば吐き出します。何かおかしいとき — リフレッシュ後にユーザーのカートが空になる、フィーチャーフラグが切り替わらない — 保存されたJSONをここにコピーして、コンソール式を書く代わりに直接読みましょう。
取り込み前にエクスポートを確認
JSONエクスポートをデータベース、データウェアハウス、<a href="https://pandas.pydata.org/" target="_blank" rel="noopener">pandas</a>のDataFrameにロードする前に、サンプルをざっと読みましょう。レコード間でキーは一貫していますか?日付は想定どおりの形式ですか?リーダーはこれを15分の作業から30秒の確認に変えます。
よくある質問
JSONフォーマッターやビューアとは違うのですか?
フォーマッターはJSONテキストをインデントと色で整形しますが、依然としてテキストです。ビューア/リーダーはそれを閲覧できる構造化UIに変えます。「リーダー」という切り口は特に、書き込みや検証ではなく読んで理解することに合わせて描画が調整されていることを意味します — ラベル付きフィールド、フィルター欄、セルに収まった読みやすい値です。最初にフォーマッターで整えてから、その結果をここに貼って実際に読む、という使い方もできます。
コメント、末尾カンマ、その他非標準の要素を含むJSONは扱えますか?
扱えません。リーダーはブラウザー組み込みのJSON.parse()でパースし、これは仕様に厳密に従います — コメント不可、末尾カンマ不可、キーはダブルクォーテーション必須です。入力にそれらがある場合は先に取り除く(またはJSON Fixerツールに通す)か、クリーンにしたバージョンをここに貼ってください。
URLから直接JSONを読めますか?
まだできません — 自分でJSONを取得して貼り付ける必要があります。これは意図的です:多くのJSONには認証トークンや個人情報が含まれており、サードパーティのプロキシ経由でルーティングするのはプライバシー的に後退です。ブラウザーならDevToolsのNetworkタブに「レスポンスをコピー」があり、ワンクリックで貼り付け用のJSONが手に入ります。
巨大な配列 — 例えば1万件のレコードではどうなりますか?
描画はされますが、ブラウザーで1万行をスクロールするのは心地よい体験ではありません。よりよい流れは:jqのようなツールで読みたいサブセット(最初の100件、失敗したトランザクションのみ、など)を切り出し、そのサブセットをここに貼ることです。本当に気になるものを読むことに最適化しましょう。
自分のJSONがGoogleやログに載ることはありますか?
ありません。パースはすべてブラウザー内で行われます。共有を押さない限り、いかなるサーバーでもJSONを受け取りません。共有リンクはランダムなGUIDに紐づけられ、有効期限はご自身で制御できます。機微なデータですか?共有を使わず、終わったらタブを閉じてください。
テーブルの中にテーブルがたくさんあります。どうやって畳みますか?
テーブルの中のテーブルはリーダーがネストを表現する方法です — payer.countryはpayerセル内にそれ自身のミニテーブルを持ちます。ある枝を見る必要がなければ、転置されたネスト向き(ネストボタン)に切り替えて密なビューにするか、フィルターで最初から表示する行を絞り込んでください。完全な折り畳み/展開機能はロードマップ上です。
関連するJSONツール
読むのはJSONでやりたいことの一つにすぎません。相性のよいものはこちら: