twitter搜索api与jquery错误

riz*_*oro 15 twitter ajax jquery jsonp

我需要使用twitter api请求使用jquery进行Twitter搜索.阅读文档后,我写了这段代码:

  $.getJSON("http://search.twitter.com/search.json?callback=myFunction&q=stackoverflow");

   function myFunction(r) {
       console.log(r);
    }
Run Code Online (Sandbox Code Playgroud)

search.json无法加载资源>当页面执行时,Google Chrome在控制台上显示此错误:

XMLHttpRequest无法加载 http://search.twitter.com/search.json?callback=myFunction&q=stackoverflow.Access-Control-Allow-Origin不允许使用origin http:// localhost/twitter.search.json无法加载资源

问题是什么?

Nic*_*ver 30

您需要以不同的方式编写它,如下所示:

$.getJSON("http://search.twitter.com/search.json?callback=?&q=stackoverflow", 
  function (r) {
    console.log(r);
});
Run Code Online (Sandbox Code Playgroud)

要触发JSONP,它会显式 查找callback=?,而不是在您的命名函数版本中.要使用指定的回调,最好使用$.ajax()完整版本:

$.ajax({
  url: "http://search.twitter.com/search.json?q=stackoverflow",
  dataType: "jsonp",
  jsonpCallback: "myFunction"
});

function myFunction(r) { console.log(r); }
Run Code Online (Sandbox Code Playgroud)

  • 看起来Twitter已经做了一些改变,导致这个答案不再适用. (2认同)