我正在尝试显示推特账号的跟随计数,但是当我使用此代码挂钩API时:
$.getJSON("https://api.twitter.com/1/users/show.json?screen_name=uswitchTech&include_entities=true", function(data) {
console.log(data);
if (!data.error) {
$("#followers").html(data.followers_count);
}
});
我收到200个确定报告,但数据为空消息。
但是,如果我将json文件下载到本地计算机并相应地更改getJSON调用,它会立即生效。
有没有人对可能导致这种情况的原因有任何想法?
由于
另外,如果我将Twitter API网址放入浏览器,它会显示所有数据,这使得它更加怪异。
答案 0 :(得分:2)
问题可能在于jsonP,因为你正在调用一个远程服务器,你必须指定你应该使用jsonP。您是否尝试将callback=?
添加为参数
$.getJSON("https://api.twitter.com/1/users/show.json?screen_name=uswitchTech&include_entities=true&callback=?", function(data) {
if (!data.error) {
$("#followers").html(data.followers_count);
}
});
取自jQuery docs
JSONP
如果URL包含字符串“callback =?” (或类似的,如 由服务器端API定义),请求被视为JSONP 代替。请参阅$ .ajax()中有关jsonp数据类型的讨论 更多细节。
答案 1 :(得分:0)
$.ajax({
url: 'https://api.twitter.com/1/users/show.json?screen_name=uswitchTech&include_entities=true',
dataType: 'jsonp',
success: function(data){
console.log(data.followers_count);
}
});