我发现了一些允许我使用OAuth连接到Twitter的代码,以便我可以发布推文。此代码实际上是关于更改“阿凡达”,但我将其更改为推文:http://net.tutsplus.com/tutorials/php/creating-a-twitter-oauth-application/
我的工作正常但OAuth似乎存储在SESSION中,所以当我关闭浏览器时它会断开连接......我希望它永久连接,以便我可以从Cron Job发布。
我该怎么做?
答案 0 :(得分:2)
<?php
// use abrahams oauth library and create your app at dev.twitter.com
$message= 'my tweet text';
define("CONSUMER_KEY", "xxxx");
define("CONSUMER_SECRET", "xxxx");
define("OAUTH_TOKEN", "xxxx");
define("OAUTH_SECRET", "xxxx");
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, OAUTH_TOKEN, OAUTH_SECRET);
$connection->get('account/verify_credentials');
$connection->post('statuses/update',array('status' => " $message "));
?>
答案 1 :(得分:0)
最简单的方法是验证应用程序并为您的帐户保存oauth_token和oauth_token_secret。然后,当您运行脚本时,将这些值设置为$ _SESSION,以便库可以使用它们。
这可能听起来有点迂回,而且确实如此。我会使用内置支持的库来手动设置访问令牌。我总是建议使用亚伯拉罕的Twitter OAuth Library for PHP:https://github.com/abraham/twitteroauth它有很好的文档并且运行良好。
答案 2 :(得分:0)
我建议使用您的OAuth回调将令牌和密钥存储在数据库表中,然后从db中提取它们,而不是尝试使用session var。我在我的一个应用程序中使用Twitter,并以一种我只需要允许访问Twitter应用程序的方式进行设置。在这里不知道您的确切需求,但我无法在会话过期时将推文发布到我的帐户,而无需重新进行身份验证。
我也是GregSchoen的第二名,Abraham的Twitter OAuth Library for PHP非常容易使用。