ロゴ
ToolkitsLabEfficiency Hub
PR広告を含む

JSONエラーの原因を日本語で解説・構文チェックUnexpected token などの意味が分かる・整形も可能

英語のJSONエラーを貼り付けると、意味と原因、直し方を日本語で表示します。JSONを貼り付ければ、間違っている場所を行番号つきで示します。

入力内容は外部に送信されません。

詳しく
0 文字 / 0 B
インデント

英語のJSONエラーを、日本語で原因まで分かるようにするツール

JSONを扱うプログラムでは、「Unexpected token < in JSON at position 0」のような英語のエラーが表示されます。しかし、この文だけでは何が起きているのか、どこを直せばよいのかが分かりません。

本ツールの「エラー文の意味を調べる」にエラーメッセージを貼り付けると、意味・よくある原因・直し方を日本語で表示します。Chrome・Firefox・Safari・Node.js・Pythonのエラーに対応しています。

原因のJSONを「JSONをチェック・整形」に貼り付ければ、間違っている行と文字の位置を、該当行の抜粋とともに示します。末尾カンマやシングルクォートなどは自動修復でき、整形・圧縮・キーの並べ替えもこの画面で完結します。

こんなシーンで便利です

fetchやaxiosでJSONのエラーが出た

「Unexpected token <」などのエラー文を貼り付けると、HTMLが返ってきている、レスポンスが空、といった原因と確認方法が分かります。

position ○○ が何行目か分からない

エラー文とJSONを貼り付けると、position の位置が何行目の何文字目かを、該当行の抜粋とともに表示します。

手で書いたJSONや設定ファイルが読み込めない

末尾カンマ、シングルクォート、コメント、全角の記号など、よくある間違いを検出して自動で直せます。

APIのレスポンスを見やすくしたい

1行に潰れたJSONを整形し、ツリー表示で階層を開閉しながら確認できます。大きなIDの数値も桁を崩さずに表示します。

使い方は簡単 4ステップ

  1. エラーが出ている場合は「エラー文の意味を調べる」にエラーメッセージを貼り付けて、原因を確認します。
  2. 「JSONをチェック・整形」に原因のJSONを貼り付けると、間違っている場所が行番号つきで表示されます。
  3. 自動修復で直せる場合は、「修復結果を入力欄へ反映」で修正後のJSONを取り出します。
  4. 「整形」「圧縮」などで結果を作り、コピーまたは保存します。

※エラー文の解説とJSONのチェックは連動しています。両方に貼り付けると、エラー位置が入力したJSONのどこにあたるかを表示します。

ご利用時の注意点

  • 自動修復の範囲:コメント、末尾カンマ、シングルクォート、クォートのないキー、全角の記号、BOM、undefined、Pythonの True・False・None が対象です。閉じ括弧の不足やコロンの欠落は手動での修正が必要です。
  • コメントの扱い:JSONの規格ではコメントを保持できないため、修復時に削除されます。
  • 処理の上限:約2MBを超える入力では、動作が重くなるのを防ぐため自動の構文チェックを停止します。
  • ほかの形式に変換する場合は、CSV⇔JSON変換、JSON⇔YAML変換、JavaScriptオブジェクト⇔JSON変換をご利用ください。
  • 型定義の生成やスキーマによる検証は、JSON→TypeScript型定義生成とJSON Schemaバリデータで行えます。

よく出るJSONエラーの意味と原因の早見表

ブラウザやNode.js、Pythonで表示される代表的なエラーメッセージと、その意味・主な原因をまとめました。

エラーメッセージ(例)意味主な原因
Unexpected token '<' / Unexpected token < in JSON at position 0JSONではなくHTMLを読み込もうとしているURLの間違い(404)、ログイン切れ、サーバーエラー
Unexpected end of JSON inputJSONが途中で終わっている、または空本文のないレスポンス、閉じ括弧の不足
"undefined" is not valid JSONundefined を読み込もうとしている変数に値が入っていない、キー名の打ち間違い
"[object Object]" is not valid JSONすでにオブジェクトの値をもう一度読み込んでいるres.json() の結果をさらに JSON.parse している
Expected property name or '}'キーの書き方が規格に合っていないキーのクォートなし、シングルクォート、末尾カンマ
Expected ',' or '}' after property valueカンマが抜けている項目間のカンマ忘れ、文字列内の " のエスケープ忘れ
Bad control character in string literal文字列の中に改行やタブがそのまま入っている改行を \n と書いていない
Unexpected non-whitespace character after JSONJSONのあとに余計なデータがあるJSON Lines形式をまとめて読み込んでいる
Expecting value: line 1 column 1 (char 0)(Python)値があるべき場所に値がない空の文字列やHTMLを読み込んでいる

※同じ原因でも、ブラウザやバージョンによってエラー文の表現は異なります。上の表にない表現でも、「エラー文の意味を調べる」に貼り付けると該当する解説を表示します。

JSONエラーを早く解決するための考え方

エラー文から原因を絞り込むときに押さえておきたいポイントです。

まず「何を読み込もうとしたか」を確認する

JSONのエラーの多くは、JSONの書き方の間違いではなく、そもそもJSONではないものを読み込んでいることが原因です。HTML、空の文字列、undefined、すでに読み込み済みのオブジェクトなどが典型です。
エラーの原因を探す前に、JSON.parse や res.json() に渡している中身を console.log やネットワークタブで確認すると、多くの場合すぐに原因が分かります。

position は行番号ではなく、先頭からの文字数

「at position 123」の数字は、JSONの先頭から数えた文字の位置(0から数える)です。1行に潰れたJSONでは、この数字だけで場所を探すのは困難です。
当ツールにエラー文とJSONの両方を貼り付けると、何行目の何文字目かに変換して、該当する行を抜き出して表示します。

大きな数値のIDは、文字列で受け渡す

JavaScriptは約9007兆を超える整数を正確に扱えないため、JSON.parse した時点で末尾の桁が変わってしまいます。エラーは出ないため、気づきにくい不具合の原因になります。
データベースのIDなど桁数の多い数値は、APIの段階で文字列として渡すのが安全です。当ツールは大きな数値を検出して知らせます。

JSONエラーの対応でよくある失敗と対策

HTMLが返ってきているのに、JSONの書き方を疑い続けてしまう

「Unexpected token <」は、JSONの中に < があるのではなく、JSONの代わりにHTMLのページが返ってきていることを示しています。JSONの中身を見直しても原因は見つかりません。

💡 対策・解決策を見る▼
ブラウザの開発者ツールの「ネットワーク」タブで、実際に返ってきたレスポンスを確認してください。URL、認証、プロキシの設定を見直すのが近道です。

position の数字を行番号だと思い込んで探してしまう

position は先頭からの文字数なので、行番号として探しても見当違いの場所を見てしまいます。

💡 対策・解決策を見る▼
エラー文とJSONを当ツールに貼り付けて、何行目の何文字目かを確認してください。

手で書いたJSONに、JavaScriptやPythonの書き方が混ざる

シングルクォート、クォートのないキー、末尾カンマ、True や None などは、JavaScriptやPythonでは正しくても、JSONではエラーになります。

💡 対策・解決策を見る▼
自動修復をオンにして貼り付けると、これらをまとめて補正し、どこを直したかを一覧で表示します。

機密情報を含むデータを、外部送信型の整形サイトに貼り付けてしまう

APIのレスポンスには、アクセストークンや個人情報が含まれていることがあります。サーバー側で処理する整形サービスに貼り付けると、通信経路やサーバーのログに残る可能性があります。

💡 対策・解決策を見る▼
当ツールはすべての処理をブラウザ内で行い、入力内容を外部へ送信しません。

よくある質問(FAQ)

Q.「Unexpected token < in JSON at position 0」はどういう意味ですか

Q.

A. JSONを読み込もうとしたのに、先頭が「<」で始まるHTML(Webページ)が返ってきた、という意味です。APIのURLの間違いによる404ページ、ログイン切れによるログイン画面への転送、サーバーエラーのページなどが主な原因です。ブラウザの開発者ツールの「ネットワーク」タブで、実際に返ってきた中身を確認してください。

Q.「Unexpected end of JSON input」の原因は何ですか

Q.

A. JSONが途中で終わっているか、中身が空の状態で読み込もうとしたときに出るエラーです。本文のないレスポンス(204 No Contentなど)に対して res.json() を実行した場合や、閉じ括弧・閉じ引用符が足りない場合に発生します。空でないことを確認してから読み込むか、JSONを当ツールに貼り付けて不足している括弧の位置を確認してください。

Q.エラーに出てくる「position 123」は何行目のことですか

Q.

A. position はJSONの先頭から数えた文字の位置(0から数える)で、行番号ではありません。当ツールの「エラー文の意味を調べる」にエラー文を、「JSONをチェック・整形」にそのJSONを貼り付けると、その位置が何行目の何文字目かを、該当する行の抜粋とともに表示します。

Q.コメントや末尾のカンマ、シングルクォートが入ったJSONは直せますか

Q.

A. 自動修復で直せます。コメント、末尾の余分なカンマ、シングルクォート、クォートのないキー、全角の記号、undefined、Pythonの True・False・None を検出して補正し、どの補正をしたかを一覧で表示します。文字列の中身は書き換えません。閉じ括弧の不足やコロンの欠落は、内容を誤って推測しないよう手動での修正が必要です。

Q.大きなIDの数値が、整形すると別の数字に変わってしまいます

Q.

A. JavaScriptでは約9007兆(2の53乗)を超える整数を正確に扱えないため、一般的な整形ツールでは末尾の桁が変わってしまいます。当ツールはこうした大きな数値を検出して知らせ、元の桁のまま出力します。プログラムで扱う場合は、IDなどを文字列として受け渡すことをおすすめします。

Q.「\u3042」のような表記を日本語に戻せますか

Q.

A. 戻せます。JSONを貼り付けて「整形」を押すと、\u3042 のような文字コード表記を「あ」などの日本語に戻して表示します。反対に、日本語を \u3042 の形式にしたい場合は「日本語を \uXXXX 形式で出力する」をオンにしてください。

Q.APIのレスポンスなど、機密情報を含むデータを貼り付けても大丈夫ですか

Q.

A. 大丈夫です。構文チェック、整形、エラー文の解説を含むすべての処理をブラウザ内だけで行い、入力内容を外部のサーバーへ送信・保存しません。

User Feedback & Request

あなたの声で、
このツールをより鋭く。

「こんな機能が欲しい」「ここを直してほしい」といったご意見や、新しいツールのリクエストを募集しています。エンジニアが直接目を通し、開発の参考にさせていただきます。

フィードバックを送る