我正在嘗試使用OAuth-PHP發佈使用PHP的推文,但我似乎無法弄清楚如何實現這一點。有沒有人有任何提示如何做到這一點,或我應該看看?OAuth-PHP和Twitter
我已經看到OAuth-PHP庫附帶的示例,但我不確定如何調整它以發佈推文。
我發現,沒有回答類似的問題至今仍爲:Sending a tweet with oauth-php?
我使用的代碼是這樣的:
define("TWITTER_CONSUMER_KEY", $this->config->Twitter->ConsumerKey);
define("TWITTER_CONSUMER_SECRET", $this->config->Twitter->ConsumerSecret);
define("TWITTER_OAUTH_HOST","https://api.twitter.com/");
define("TWITTER_REQUEST_TOKEN_URL", TWITTER_OAUTH_HOST . "oauth/request_token");
define("TWITTER_AUTHORIZE_URL", TWITTER_OAUTH_HOST . "oauth/authorize");
define("TWITTER_ACCESS_TOKEN_URL", TWITTER_OAUTH_HOST . "oauth/access_token");
define("TWITTER_PUBLIC_TIMELINE_API", TWITTER_OAUTH_HOST . "statuses/public_timeline.json");
define("TWITTER_UPDATE_STATUS_API", TWITTER_OAUTH_HOST . "statuses/update.json");
define('OAUTH_TMP_DIR', function_exists('sys_get_temp_dir') ? sys_get_temp_dir() : realpath($_ENV["TMP"]));
// Twitter test
$options = array('consumer_key' => TWITTER_CONSUMER_KEY, 'consumer_secret' => TWITTER_CONSUMER_SECRET);
OAuthStore::instance("2Leg", $options);
try {
$request = new OAuthRequester(TWITTER_UPDATE_STATUS_API, "POST", array('status' => $msg));
$result = $request->doRequest();
}
catch(OAuthException2 $e) {
echo "Exception: " . $e->getMessage();
}
這就是我想要做的,但我得到一個例外: 請求代碼401失敗:{「request」:「/ statuses/update.json」,「error」:「Invalid/expired Token」}
由於我是OAuth的新手,重要的一步,不知道它...
任何線索?
任何幫助將不勝感激。
PEAR的Services_Twitter可能有幫助:http://pear.php.net/Services_Twitter – MECU