我尝试了解整个OAuth概念,但未能完成我的应用程序。让我们从一些关于我想做什么的信息开始:Oauth,Twitter和其他人 - Codeigniter PHP
首先,我正在为自己编写一个博客应用程序在Codeigniter中。在这个博客上,我想介绍一些来自网络的共享数据,比如推文,flickr,500px照片,声音云轨道等等。我从Twitter开始。我知道我可以使用twitter应用程序等,但我希望这一切都在本机代码中,以便我能够理解整个OAuth过程。其次,所有关于twitter,500px等的数据都是我的 - 没有人会登录到我的博客,因此我不对“用twitter登录”类型的东西感兴趣。
第三,我已经在Twitter上注册了我的应用,并且拥有消费者密钥,消费者密钥,访问令牌和访问令牌密钥。
现在,这是我认为我会出错的地方。可以说我想抓住我自己的时间表。 twitter API表示这需要进行身份验证。我可以不只是通过我的两个键,我的访问令牌检索我的时间表。
我已经尝试了所有种类的东西,不断收到的错误:
{"errors":[{"message":"Invalid or expired token","code":89}]}
我知道我的访问令牌是正确的,因为我可以在我的Twitter的API面板中看到它。
如果我做这样的判断,我知道并不需要身份验证,它带回我的用户信息就好了:
$user = $this->rest->get('http://twitter.com/users/show', array('screen_name' => 'jamesstoddern'));
但是,如果我尝试的东西连接到我的时间表是这样,它因上述错误而失败。
$authArray = array(
'consumer_key' => 'MY KEY HERE',
'consumer_secret' => 'MY SECRET HERE',
'username' => 'jamesstoddern',
'access_token' => 'MY ACCESS TOKEN HERE'
);
$timeline = $this->rest->get('https://api.twitter.com/1/statuses/home_timeline.json', $authArray);
我明明做错事,但重要的是我找到的例子似乎是有关身份验证的其他用户使用“登录与Twitter”按钮,而不是有关刚好验证自己的应用程序静默。
如果有人能给我一些指针或者只是做我想做的事情的例子,我会非常感激。
我正在使用Codeigniter,并尝试过Phils Sturgeons OAuth spark但找不到足够的示例来帮助我。我真的觉得这一切都是一场斗争。
请有人解释一下我需要采取的步骤来静静地验证我自己的应用程序,以便我可以拨打我自己的Twitter资源。一旦我理解了这个概念,我应该能够应用相同的逻辑和理解来连接我的500px照片。我不想使用Twitter特定的代码,并希望尽可能使所有这些都尽可能通用,以便我可以在理论上连接到任何API。
非常感谢所有这些冗长的问题!
James
干杯,我会看看指导和你的图书馆 - 非常有用。再次感谢 – 2013-08-21 13:28:26