twitter搜索api与jquery错误

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

$.getJSON("http://search.twitter.com/search.json?callback=myFunction&q=stackoverflow"); function myFunction(r) { console.log(r); } 

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无法加载资源

问题是什么?

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

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

要触发JSONP,它正在寻找显式 callback=? ,这不在您的命名function版本中。 要使用指定的回调,最好使用$.ajax()完整版:

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

只是为了给答案添加更多内容,您可以使用以下代码在每个返回的推文中显示文本。

 $.getJSON("http://search.twitter.com/search.json?callback=?&q=stackoverflow", function(data){ for (i=0; iText: " + data.results[i].text + "
" + "

Created at: " + data.results[i].created_at +"



"); } });

然后在你的身体html中放入以下div