jsonlintでテストすると完璧な JSON がいくつかありますが、Invalid character
それをオブジェクトに解析しようとするとエラーが発生します。JSON 文字列を確認しましたが、問題ないようです。隠れている可能性のある面白いキャラクターを確認するにはどうすればよいですか??
ここにjsフィドルリンクがあります。http://jsfiddle.net/UexKp/
jsonlintでテストすると完璧な JSON がいくつかありますが、Invalid character
それをオブジェクトに解析しようとするとエラーが発生します。JSON 文字列を確認しましたが、問題ないようです。隠れている可能性のある面白いキャラクターを確認するにはどうすればよいですか??
ここにjsフィドルリンクがあります。http://jsfiddle.net/UexKp/
これはまさにあなたが遭遇している問題ではないかもしれませんが、応答タイプがテキストではなく json として解釈されるように指定することで、ajax 呼び出しによって返される JSON の同様のエラーを修正しました (もちろん Internet Explorer のみ)。 . 私はjQueryを使用しているので、これにはajaxオプションのdataTypeパラメーターを「テキストjson」に設定する必要があり、これにより、応答がテキスト(IEが認識する)からJSONに適切に変換されます。
これがうまくいかない場合は、サーバーにアクセスできると仮定して、サーバーからの応答タイプを直接変更して、返される応答がテキストではなく JSON であることを正しく報告することもできます。
JSONに問題はありません:http://jsfiddle.net/UexKp/2/
{
とは}
、ブロックとして扱うことができる場合はオブジェクトリテラルとして扱われないため、たとえば変数を割り当てると修正されます。フィドル/1に示すように、(
それをラップすることもできます)
Fiddler ( http://www.fiddler2.com/fiddler2/ )のようなデバッグ プロキシを使用してから、JSON 要求の生データを調べて、応答に不要な文字があるかどうかを確認できます。