【发布时间】:2016-01-21 14:12:03
【问题描述】:
尝试使用 PHP 发布 JSON 数据,但显示此文本 - {"message":"cjson 解码错误","code":500,"error":true}
这是通过浏览器提交的数据(使用 Live HTTP Headers 插件获取):
{"nodes":[{"id":"fbm:n#1445506477266","type":"bookmark","parentId":"ROOT","refId":null,"href":"" ,"text":"[新书签]","desc":"","tags":"","cr":1445506584}],"revision":1,"token":"MTQ0NTUwNjQ3Ny4yOS1O9m2hacygwtDuox8/fHtN/efVUtNC9RvMlQbPAS +gwg=="}
这是我的数据:
json_encode(array("nodes"=>array(array("id"=>"fbm:n#1445506477266", "type"=>"bookmark", "parentId"=>"ROOT","refId"=>null,"href"=>"","text"=>"[New Bookmark]","desc"=>"","tags"=>"","cr"=>1445506584)), "revision"=>1,"token"=>"MTQ0NTUwNjQ3Ny4yOS1O9m2hacygwtDuox8/fHtN/efVUtNC9RvMlQbPAS+gwg=="))
当我打印我的数据时,我得到的结果完全相同(除了 json_encode 函数用 \ 转义 /,但我在 JSON 中读取它并不重要)。所以这是我的数据的输出
{"nodes":[{"id":"fbm:n#1445506477266","type":"bookmark","parentId":"ROOT","refId":null,"href":"" ,"text":"[新书签]","desc":"","tags":"","cr":1445506584}],"revision":1,"token":"MTQ0NTUwNjQ3Ny4yOS1O9m2hacygwtDuox8/fHtN/efVUtNC9RvMlQbPAS +gwg=="}
如您所见,一切都是相同的(除了 )。甚至使用 Beyond Compare 工具来比较这些代码的每个字符,没有区别。
为什么代码仍然返回解码错误?也尝试使用 JSON_UNESCAPED_SLASHES(所以没有添加斜杠),没有结果。
【问题讨论】: