我从客户端向服务器发送请求,我得到了这个回复:
{
"m": "",
"d": {
"e": [
{
"k": "login",
"m": "__10_10"
}
]
},
"s": false,
"t": "v"
}
但是当我尝试在客户端的响应中执行JSON.parse时,我得到了:
Uncaught Message._fromJSONString: JSON.parse error:undefined
代码:
try{
console.log(json);
return Message._fromJSONObject(JSON.parse(json));
}catch(e){
throw "Message._fromJSONString: JSON.parse error:" + e.message;
}
我从http://jsonlint.com/查看我的JSON,这没关系...... 我真的不明白这个问题,这是一个发送此响应的特殊类,一个Validator。从其他请求我没有这个问题......
你对什么是goig有什么想法?感谢。
答案 0 :(得分:3)
我找到了解决问题的方法。似乎由于某种原因它将它作为普通的JavaScript对象而不是JSON。这段代码现在工作正常。
var json ={
"m": "",
"d": {
"e": [
{
"k": "login",
"m": "__10_10"
}
]
},
"s": "false",
"t": "v"
};
json =JSON.stringify(json); // this converts it into JSON parsable
console.log(JSON.parse(json));
JSfiddle => http://jsfiddle.net/j39tP/
答案 1 :(得分:0)
今天早上我遇到了类似的错误。我不得不做两件事来解决它:
无论出于何种原因,错误日志都说我需要将json数据放入数组格式,如JSON.parse([jsondata]);
除此之外,我的服务器端输出也有错误 - 所以我想仔细检查一下以确保它返回正确的结果?
不确定这是否适用于您的情况。
希望这有帮助