我收到来自AJAX $ .getJSON()请求的格式错误的JSON响应。我不明白这个问题。
这是请求代码:
var myfunc = function(){
$.getJSON( "/", {"data": ""}, function( data, status ){
var values = data;
$("#temperature").html( values.temperature.toFixed(1).toString() );
$("#humidity").html( values.humidity.toFixed(0).toString() );
});
});
这是接收到的JSON数据(通过Firefox调试器提取):
{
"temperature": 17.799999237060547,
"humidity": 35.900001525878906,
"failed": false
}
我看不到这里的格式错误。和代码的作品。DOM元素id="temperature"
,id="humidity"
并且已正确更新。
我得到了完全相同的结果使用$.get()
同JSON.parse()
。
有人知道如何解决问题吗?
我的猜测是您通过网络接收的json数据格式错误,但是无论如何它都已成功转换为对象。
getJSON自动将JSON.parse(..)应用于接收到的数据。
尝试使用Google Chrome浏览器上的“网络”监听器标签,在解析之前准确查看您收到的响应。可能缺少“”或类似的内容。
如果您有权访问服务器代码,则也可以尝试在其中记录响应。
编辑:您可能对此链接感兴趣,可能与某些服务器配置有关。在此链接中
还提到了Mimetype 。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句