我正在尝试从reddit获取某个网址的分数。要添加“与reddit(计数)共享”链接:
function redditCounter(url) {
// Get number of counts from reddit JSON api
// $.getJSON('http://www.reddit.com/api/info.json?url='+url+'',
$.getJSON('http://www.reddit.com/api/info.json?url=http://stackoverflow.com/q/811074/1288',
function(data) {
count = 0;
if (data.children.count() > 0) {
first_child = data.children[0];
alert(first_child.score);
}
});
}
当您使用curl或浏览器调用网址时,结果如Reddits API documentation中所述。有一个子数组,其中包含一个带数字的分数。
然而,$.getJSON
会返回一个空答案,在萤火虫踩到它时会看到。
这可能是reddit的保护方法吗?或者我使用getJSON错了吗?
答案 0 :(得分:5)
我很确定您应该真正期待JSONP响应,在这种情况下,我非常确定您应该将&callback=?
附加到您的网址。
编辑:对于将来偶然发现这个问题的人来说只是一个注释:jQuery的getJSON()
如果遇到格式错误的JSON对象,将无声地失败,或者在这种情况下,从另一个域收到JSON对象JSONP填充。但是,某些浏览器(例如:Google Chrome)可能会抛出一个MIME类型警告,该警告非常适合作为您所获得的JSON对象出现问题的指示。