格式错误的 JSON 响应
Malformed JSON response
我收到来自 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 上的 'network' 侦听器选项卡,在解析之前准确查看您收到的响应。可能缺少 " 或类似的东西。
如果您有权访问服务器代码,您也可以尝试在其中记录响应。
编辑:
you might be interested by this link
可能与某些服务器配置有关。
Mimetype 也被提及 in this link.
我收到来自 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 上的 'network' 侦听器选项卡,在解析之前准确查看您收到的响应。可能缺少 " 或类似的东西。
如果您有权访问服务器代码,您也可以尝试在其中记录响应。
编辑:
you might be interested by this link
可能与某些服务器配置有关。
Mimetype 也被提及 in this link.