无法解析JSON,捕获语法错误?

3

我正在尝试解析以下JSON:

06-22 18:49:17.182: ERROR/HTMLContacts(2716): Json:
[{"contactId":"1","contactPhoto":"SIkADAjz94lQTkcNChoKAAAADUlIRFIAAABgAAAAYAgCAAAAbfrgbwAAAANzQklUBQYFMwuNgAAA\nHuhJREFUeJztfU2LJLuS5ZlGAcfAEyTIggy4D14uZjGznB87q9nO75nFwMyiG+rBuxAJN0GCdLAD\nocUsTHL3yMisj3vvm6abFkVVVoRcLpns85hJ+Z/+53//Hw4g4djUoS50oEsdANwF+PnLmaQ60IEE... }

这是一个巨大的字符串数组,长度接近于10,000。

我得到了以下错误信息:

Uncaught SyntaxError: Unexpected token ILLEGAL -- From line 1 of file:///android_asset/www/index.html

有人能解释一下正在发生的事情吗?


2
你尝试过验证 JSON 字符串吗?可以使用 http://jsonlint.com/ 进行验证。 - locrizak
谢谢,是的,有一个问题,我正在尝试解决 "contactPhoto": "SIkADAjz94lQTkcNCho -----------------------^ 期望 'STRING'、'NUMBER'、'NULL'、'TRUE'、'FALSE'、'{'、'['。 - Preethi
1
好的,http://jsonlint.com/ 可以告诉你错误出现在哪里以及是什么错误。你应该修复它。由于我们无法访问整个数据,所以我们无法为你提供更多帮助。 - Felix Kling
4个回答

4

我尝试验证JSON。这是错误消息:“contactPhoto”:“SIkADAjz94lQTkcNCho ----------------------- ^ 期望“STRING”,“NUMBER”,“NULL”,“TRUE”,“FALSE”,“{”,“[”..有任何帮助吗?我无法理解它。 - Preethi
那么你是不是缺少了一个闭引号呢? - thescientist

1

我在MC40 Android 2.3上运行我的PhoneGap应用程序时遇到了同样的问题,我所做的就是将JSON.parse替换为$.parseJSON。显然,JSON.parse在旧浏览器中存在兼容性问题。


0

JavaScript 不喜欢的非转义字符,请确保它可以接受任何接收到的字符。


Java?你是说JavaScript吗? - thescientist

0
确保其中没有制表符,可以用\t进行替换。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接