JQuery ajax getJSON响应有大小但是空体?

时间:2010-07-18 23:19:58

标签: jquery ajax firebug

我们正试图使用​​jquery的getJSON()方法点击meetup.com api并遇到一些问题。 在萤火虫中我们可以运行

$.getJSON(
'http://api.meetup.com/events.json?group_urlname=Closing-the-NOLA-Gap&key=ourkey', 
function(data) { console.log(data) }
);

我们可以看到通话需要一些时间。我们可以检查响应头并查看内容大小是42K,但内容正文(如firebug所示)是空的!这怎么可能?

当我们指向浏览器中的url时,我们会在页面上显示所有相应的json格式文本。

我们缺少什么?

PS。我们尝试了$ .ajax和$ .get - 每个都有相同的结果。我们还尝试了3个参数,其中第一个是url,第二个是null,第三个是回调。

1 个答案:

答案 0 :(得分:5)

确保您在要点击的网址的查询字符串中有callback=? ...因为它是一个远程域,您需要在这里使用JSONPcallback=?个触发器) 。像这样:

$.getJSON(
 'http://api.meetup.com/events.json?group_urlname=Closing-the-NOLA-Gap&key=ourkey&callback=?', 
 function(data) { console.log(data); }
);

来自$.getJSON()文档:

  

如果URL在URL中包含字符串"callback=?",则该请求将被视为JSONP。有关详细信息,请参阅$.ajax()jsonp数据类型的讨论。