无法从Jquery getJSON请求中读取数据

时间:2010-01-20 22:15:33

标签: javascript jquery json

我正在使用标准的jquery getJson请求请求json提要。 json网址未托管在我的网域上。

$.getJSON('myfeed.json?jsoncallback=?',

function(data){
 console.log(data);
})

然而,使用Firebug,我没有在控制台中看到任何数据。但是当我在Firebug中的Net面板下查看时,我可以看到json数据已经加载了。

任何人都知道这是为什么?

示例JSON

[{
    "person": {
        "name": "Bob",
    }
},
{
    "person": {
        "name": "Dave",
    }
},
{
    "person": {
        "name": "Jim",
    }
}
}]

3 个答案:

答案 0 :(得分:1)

确保:

  1. 控制台完全打开。在地址栏中输入javascript:console.log('test')以查看是否有任何问题 - 有时您需要刷新页面才能使控制台正常运行。
  2. 其他域上的Feed实际上是为JSON-P 构建的,这在访问其他域上的Feed时是必需的。你实际上想要访问什么Feed?

答案 1 :(得分:0)

我认为getJSON方法不会解析内容,除非你的内容类型标题是text / json。您可以更改服务器端标题,也可以执行此类操作

$.get("http://MYURL", function(data){
  var jsondata = eval("("+data+")")
}

答案 2 :(得分:0)

确保json数据格式正确,并且服务器返回适当的内容类型。在console.log上放置一个断点。很可能这不会执行,因为回调由于某种原因没有运行。