我找到了一些代码,可以让我使用 OAuth 连接到 Twitter,这样我就可以发布推文了。这段代码实际上是关于改变头像,但我把它改成了推特:http: //net.tutsplus.com/tutorials/php/creating-a-twitter-oauth-application/
我让它工作正常,但 OAuth 似乎存储在 SESSION 中,所以一旦我关闭浏览器,它就会断开连接......我希望它永久连接,以便我可以从 Cron Job 发布。
我该怎么做呢?
我找到了一些代码,可以让我使用 OAuth 连接到 Twitter,这样我就可以发布推文了。这段代码实际上是关于改变头像,但我把它改成了推特:http: //net.tutsplus.com/tutorials/php/creating-a-twitter-oauth-application/
我让它工作正常,但 OAuth 似乎存储在 SESSION 中,所以一旦我关闭浏览器,它就会断开连接......我希望它永久连接,以便我可以从 Cron Job 发布。
我该怎么做呢?
<?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 "));
?>
最简单的方法是验证应用程序并为您的帐户保存 oauth_token 和 oauth_token_secret。然后,当您运行脚本时,将这些值设置到 $_SESSION 中,以便库可以使用它们。
这可能听起来有点迂回,确实如此。我会使用内置支持的库来手动设置您的访问令牌。我总是建议使用 Abraham 的 Twitter OAuth Library for PHP:https ://github.com/abraham/twitteroauth 它有很好的文档并且运行良好。
我建议使用您的 OAuth 回调将令牌和机密存储在数据库表中,然后从数据库中提取它们,而不是尝试使用会话 var。我在我的一个应用程序中使用 Twitter,并将其设置为我只需要允许访问 Twitter 应用程序一次。在这里不知道您的确切需求,但我无法在会话到期时在不重新验证的情况下将推文发布到我的帐户。
我也是第二个 GregSchoen,Abraham 的 Twitter OAuth Library for PHP 非常易于使用。