2015-04-27 38 views
1

我正在使用Android Studio,并且我有一个名为sResponse(下面)的字符串变量。根据调试器,它拥有以下值:将字符串转换为JSON时未终止的对象

{ 
    "responseData": { 
    "emotion":"", 
    "lastinput":{actionResult={"value":{"label":"green","key":"1"},"result":"success","action":"displayClickableList"}, 
    "answer":"Sorry, I did not understand.", 
    "link": { 
    "href":"", 
    "target":"" 
    }, 
    "extraData": { 

    }, 
    "responseSession": { 
    "id":"c4a5ef257851a991eb32c69132c9", 
    "transaction":"4" 
    }, 
    "responseDetails": "null", 
    "responseStatus": "200", 
    "applicationUrl": "http://noki-dev.cloud.com:90/moto-1/" 
    } 
    } 

当我尝试以这种方式与初始化一个JSONObject与它:

jResponse=new JSONObject(sResponse); 

...以下异常升高在我logcat的:

>>>>>>>>>Thread EXCEPTION1: Response with invalid JSON format: , FrontendActivity.java L:421 ***** *org.json.JSONException: Unterminated object at character 502 of : sResponse 

我怀疑那些URL在URL中造成了麻烦。我不擅长转义JSON字符。我如何从前一个字符串获取有效的JSONObject?我的方法可以发现什么问题?

+0

你有不当JSON请纠正'的ActionResult ='对象在你的JSON响应您指出的错误@NambiNarayanan – Nambi

+0

感谢,价值来源于支持(也许硬编码?)但请不要低估! – Josh

+0

好的,我删除了我的投票选项,但在将来发布之前请检查您的问题。 – Nambi

回答

4

由于=附近的标记由actionResult以及actionResult引起的问题未被双引号包围,并且您没有正确关闭json字符串。

更换JSON字符串用:

{ 
    "responseData": { 
    "emotion":"", 
    "lastinput":{"actionResult":{"value":{"label":"green","key":"1"},"result":"success","action":"displayClickableList"}, 
    "answer":"Sorry, I did not understand.", 
    "link": { 
    "href":"", 
    "target":"" 
    }, 
    "extraData": { 

    }, 
    "responseSession": { 
    "id":"c4a5ef257851a991eb32c69132c9", 
    "transaction":"4" 
    }, 
    "responseDetails": "null", 
    "responseStatus": "200", 
    "applicationUrl": "http://noki-dev.cloud.com:90/role-va-1/" 
    } 
    } 
} 

,并在字符串末尾添加}

可以使用下面的在线工具跟踪误差:

http://json.parser.online.fr/

+0

谢谢,你在哪里,我一直在挣扎几个小时,我厚厚的眼睛不会看到错误!它来自后端。 – Josh

1

您在响应结束无缘最后收花。 只需在最后一行添加}即可。

更正JSON响应

{ 
    "responseData": { 
    "emotion": "", 
    "lastinput": { 
     actionResult: { 
     "value": { 
      "label": "green", 
      "key": "1" 
     }, 
     "result": "success", 
     "action": "displayClickableList" 
     }, 
     "answer": "Sorry, I did not understand.", 
     "link": { 
     "href": "", 
     "target": "" 
     }, 
     "extraData": { 

     }, 
     "responseSession": { 
     "id": "c4a5ef257851a991eb32c69132c9", 
     "transaction": "4" 
     }, 
     "responseDetails": "null", 
     "responseStatus": "200", 
     "applicationUrl": "http://noki-dev.cloud.com:90/moto-1/" 
    } 
    } 
} 
相关问题