2013-03-18 138 views
1

解决

问题是,即使对于公共数据,Twitter现在(愚蠢)也需要OAuth。一个简单的解决方法是拥有一个本地PHP脚本,该脚本使用Ajax获取数据和访问数据,而不是直接使用Ajaxing twitter。Twitter user_timeline JSONP。没有反应


我目前正在试图从使用Reqwest JavaScript库的Twitter用户拉时间表。但是,当我这样做时,请求被认为是成功的,但没有检索到数据,并且控制台显示GET错误。该代码我尝试如下:

$.domReady(function() { 

    $.ajax({ 
     url: 'http://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=twitter', 
     type: 'jsonp', 
     success: function (response) { 
      console.log(response); 
     }, 
     error: function (err) { 
      console.log(err); 
     } 
    }); 

}) 
+1

Twitter API版本1已过时,可能不再支持(不记得确切日期)。您需要使用API​​ 1.1 – DevDave 2013-03-18 13:35:12

+0

我试过1.1,但也不成功。发布更新 – 2013-03-18 13:36:55

+0

我面临类似的问题,我认为在能够调用Twitter API之前,您必须先使用OAuth,您是否已经这样做?我用C#.net工作,并使用LinqToTwitter来解决这个 – DevDave 2013-03-18 13:38:26

回答

0

我刚刚更新了我的plugin以使用Twitter 1.1 API。不幸的是,根据Twitter的敦促,您将不得不从服务器端代码执行实际的请求。但是,您可以将响应传递给插件,其余部分将会处理。我不知道你正在运行的是什么框架,但我已经添加了用C#提出请求的示例代码,并且很快就会添加用于PHP的示例代码。

+0

我个人没有使用jQuery,但将此设置为接受的答案,无论我确定它会解决很多人的问题。谢谢:) – 2013-03-18 16:49:35

+0

没有问题 - 如果你需要制作定制的帮助,香草JS版本让我知道。 – 2013-03-18 16:53:40

0

如果我们想要,我们仍然可以解析他们的页面,并用纯客户端JS重新实现至少一些丢失的功能。

我们需要的是:一个可以处理HTTPS页面(我唯一知道的就是YQL API)的CORS代理,以及关于如何在他们的公共页面上获取信息的知识。 牢记这一点,我们可以从用户获取,例如,近20个鸣叫,我在做演示:http://jsbin.com/agejol/1(点击“编辑在JSBin”查看代码)

附:我知道这可能违反了他们的政策,但我关心它,就像他们放弃所有客户端API时关心我们一样。