JSON の Unexpected Token エラーを修正

Unexpected token は、厳密な JSON パーサが、有効な JSON ではその位置に現れてはならない文字に到達したことを意味します。

Unexpected token の意味

JSON パーサは左から右へ文書を読みます。Unexpected token と報告したら、その位置で JSON の文法と合わない文字に出会ったということです。報告された文字はヒントですが、本当のミスは直前にあるかもしれません。

よくあるトークンと原因

出てきたトークンは、JavaScript の構文か、JSON に似ているが厳格には JSON でないコピー元のテキストを指していることが多いです。

  • Unexpected token ' は、シングルクォートの文字列やキーをダブルクォートにすべきことを意味することが多い
  • Unexpected token , は、末尾カンマがあることを意味することが多い
  • Unexpected token / は、JavaScript のコメントが JSON にコピーされていることを意味することが多い
  • Unexpected token T、F、N は、True/False/None を true/false/null に直すべきことを意味することが多い
  • Unexpected token after JSON value は、文書終了後に余計なテキストがあることを意味することが多い

エラーの例

{ name: 'Ada', active: True, }

修正後の JSON

{ "name": "Ada", "active": true }

修復フロー

payload を JSON Fix に貼り、Repair & Format、続いて Validate を実行します。エラーが残るなら、行と列を確認し、ハイライトされたトークンの直前の文字を見てください。

関連の詳細記事

それぞれが Unexpected token の特定のバリエーションを掘り下げ、壊れた例/修正例とステップを示します。