如何获取Twitter URL计数?

时间:2015-08-24 00:37:19

标签: javascript jquery api twitter jsonp

我有以下代码,我无法理解它为什么不返回并在HTML正文中打印它。

var pageURL = document.URL;
var tweet  = "https://cdn.api.twitter.com/1/urls/count.json?url='"+ pageURL + "'";

$.getJSON(tweet,function(json){
    $('#twitterfeed').html(json.count); 
});

<div id="twitterfeed"></div>

https://cdn.api.twitter.com/1/urls/count.json?url=http://www.google.com

返回{“count”:23844636,“url”:“http://www.google.com/”}

以下似乎不起作用,有没有人知道为什么?

1 个答案:

答案 0 :(得分:3)

默认情况下,jQuery会发出AJAX请求。由于它的交叉域和CORS HTTP头在响应中不存在,因此失败。添加&amp;回调=?请求URL以发出JSONP请求

  var pageURL = "http://www.google.com";
  var urlParams = $.param({ "url": pageURL });
  var tweet  = "https://cdn.api.twitter.com/1/urls/count.json?"+urlParams;


  $.ajax(tweet, { "dataType" :"jsonp" }).done(function(json){
    $('#twitterfeed').text(json.count); 
  });

演示

http://jsbin.com/tasaloraje/edit?html,output