2011-01-11 78 views
1

我發現了一些代碼,允許我使用OAuth連接到Twitter,以便發佈推文。這段代碼實際上是有關更改頭像,但我改變它只是鳴叫:http://net.tutsplus.com/tutorials/php/creating-a-twitter-oauth-application/Twitter OAuth和Cron Jobs

我得到它的工作不錯,但OAuth的似乎是這樣,只要我關閉它斷開瀏覽器存儲在會話......我希望它永久連接,這樣我就可以從Cron Job發佈信息。

我該如何去做這件事?

回答

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 ")); 

    ?> 
0

最簡單的方法是驗證應用程序併爲您的帳戶保存oauth_token和oauth_token_secret。然後,當你運行腳本時,將這些值設置到$ _SESSION中,以便庫可以使用它們。

這可能聽起來有點迂迴,它是。我會使用內置的庫來手動設置訪問令牌。我總是建議使用亞伯拉罕的Twitter OAuth Library for PHP:https://github.com/abraham/twitteroauth它具有良好的文檔並且運行良好。

0

我會建議使用您的OAuth回調將令牌和祕密存儲在數據庫表中,然後從數據庫中取出它們,而不是嘗試使用會話變種。我在我的一個應用程序中使用Twitter,並以一種方式設置,我只需要一次允許訪問Twitter應用程序。不知道您在這裏的確切需求,但是我無法將推文發佈到我的帳戶,而無需在會話過期時重新進行身份驗證。

我也是第二個GregSchoen,亞伯拉罕的Twitter OAuth Library for PHP非常易於使用。