3

我收到“错误 #1132:无效的 JSON 解析输入”并且不明白为什么。

我的 json 是由 php 生成的:json_encode($x)。如果在 TextArea(flex) 中显示,则输出 json 显示如下:

{
   "title":"The Incredibles",
   "year":"2004",
   "type":"movie",
   "id":"9806",
   "imdb_id":"tt0317705",
   "rating":8.6,
   "tagline":"No gut, no glory",
   "overview":"Bob Parr has given up his superhero days to log in time as an insurance adjuster and raise his three children with his formerly heroic wife in suburbia. But when he receives a mysterious assignment, it\\'s time to get back into costume.",
   "runtime":115,
   "budget":92000000,
   "image":"http:\/\/cf2.imgobject.com\/t\/p\/w185\/jjAgMfj0TAPvdC8E5AqDm2BBeYz.jpg",
   "trailer":"rMfrFG_69zM"
}

我用几个验证器进行了验证,他们都说它是有效的 json。

在 flex 方面,我正在尝试使用以下代码访问 json:

JSON.parse(event.result.toString());

但得到错误。有人遇到过这个问题吗?

编辑1:

似乎概述行是问题所在,但我不明白为什么,因为我使用了 php json_encode 应该正确转义的东西......

4

4 回答 4

3

的转义序列\\'似乎终止了 JSON。

it\\'sit\'s如果你想要“它是”,应该是。

由于此 JSON"用于字符串,因此它可能只是:it's.

JSON:

{
   "title":"The Incredibles",
   "year":"2004",
   "type":"movie",
   "id":"9806",
   "imdb_id":"tt0317705",
   "rating":8.6,
   "tagline":"No gut, no glory",
   "overview":"Bob Parr has given up his superhero days to log in time as an insurance adjuster and raise his three children with his formerly heroic wife in suburbia. But when he receives a mysterious assignment, it\'s time to get back into costume.",
   "runtime":115,
   "budget":92000000,
   "image":"http:\/\/cf2.imgobject.com\/t\/p\/w185\/jjAgMfj0TAPvdC8E5AqDm2BBeYz.jpg",
   "trailer":"rMfrFG_69zM"
}
于 2012-07-28T22:44:50.240 回答
2

不知道你有没有解决问题,不过我也遇到了同样的问题,今天终于解决了,问题是服务器端,返回json字符串的文件是UTF8编码的,我已经转换了(通过notepad++) 到ANSI,一切正常 )))。

于 2012-10-25T13:51:42.200 回答
1

JSON没有问题,我知道这个问题已经有了答案,但是这个答案是给那些仍然面临以下错误信息的人:

语法错误:错误 #1132:无效的 JSON 解析输入。

当涉及到HTTPService选项时,可能是结果格式不合适的问题:尝试textore4x格式(它们是最方便的xml格式)并避免可能会在 JSON 输出中引入一些额外字符而触发一些错误的格式。

使用以下方法解析您的数据:

var temp_obj:Object = JSON.parse(event.result as String);

HTTPService并通过使用正确的调用来触发 JSON 输出resultFormat

resultFormat="text"

或者

resultFormat="e4x"
于 2014-11-04T16:56:19.717 回答
0

您的 JSON 是有效的,并且没有任何问题。可能这会对你有所帮助。在您的结果事件中,使用下面的参考更新您的代码。

    // Code
    var result:Object = JSON.parse( String(event.result) );
    trace( result['title'] );
于 2013-05-23T12:53:48.703 回答