2011-01-26 14 views
1

私が持っている次の2つのファイルTwitterのAPI失敗

<?php 

require_once('twitteroauth.php'); 
require_once('OAuth.php'); 

session_start(); 

$consumer_key = '!!!'; 
$consumer_secret = '!!!'; 
$connection = new TwitterOAuth ($consumer_key, $consumer_secret); 

$request_token = $connection->getRequestToken(); 

$_SESSION ['Oauth_token'] = $token = $request_token['oauth_token']; 
$_SESSION ['Oauth_token_secret'] = $request_token['oauth_token_secret']; 


switch ($connection->http_code) { 
case 200: 
$url = $connection->getAuthorizeURL ($token); 
header ('Location:'. $url); 
break; 
default: 
echo 'Could not connect to Twitter. Refresh the page or try again later.'; 
} 

?> 

sendTweet.phpそして、私のコールバックは、followthru.php

<?php 
require_once('twitteroauth.php'); 
require_once('OAuth.php'); 
session_start(); 

$consumer_key = '!!!'; 
$consumer_secret = '!!!'; 

if (isset ($_REQUEST ['oauth_token']) && $_SESSION ['oauth_token'] !== $_REQUEST ['oauth_token']) { 
$_SESSION ['Oauth_status'] = 'oldtoken'; 
} 

$connection = new TwitterOAuth ($consumer_key, $consumer_secret, $_SESSION ['oauth_token'], $_SESSION ['oauth_token_secret']); 

$access_token = $connection-> getAccessToken ($_REQUEST ['oauth_verifier']); 

$_SESSION ['access_token'] = $access_token; 

$content = $connection->get('account/verify_credentials'); 
print_r($content); 
$connection->post('statuses/update', array('status' => 'Text of status here')); 
if (200 == $connection->http_code) { 
echo 'Success!'; 
// $_SESSION ['status'] = 'verified'; 
} else { 
} 
?> 

Followthru.phpエコーさん:

stdClass Object ([request] => /1/account/verify_credentials.json?oauth_consumer_key=pIkRdkUVhiKPiw32S2zbA&oauth_nonce=1e6bfcdaf50c2213219341105edd353c&oauth_signature=qNJ8g1i9eXZEM%2FgbTHLxMpkHZmg%3D&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1296010545&oauth_token=&oauth_version=1.0 [error] => Could not authenticate you.) 

それが認証できないことを述べています私を教える?あなたが私を助けてくれたら、私は完全に混乱していて、大好きです。

+0

ないアイデア:

はおそらく、このスニペットはいくつかのことを行う必要がありますするためにあなたのビットを助けることができます。しかし、これまでのTwitterやOAuthのヘルプリクエストでも同様のエラーが発生する可能性があります:http://stackoverflow.com/questions/tagged/twitter+php+oauth – mario

答えて

0

あなたは、コードの一部が欠けているように見えます..それらの$ _SESSION VARSが定義されてい

new TwitterOAuth ($consumer_key, $consumer_secret, $_SESSION ['oauth_token'], $_SESSION ['oauth_token_secret']);

if (isset($_GET['oauth_token'])) { 
     $Twitter->setToken($_GET['oauth_token']); 
     $token = $Twitter->getAccessToken(); 
     $Twitter->setToken($token->oauth_token, $token->oauth_token_secret); 
     $user= $Twitter->get_accountVerify_credentials(); 
} 
+0

それを入れる? – cdog5000

+0

あなたはそれをコピーするだけでなく、あなたが何をするべきかを理解してください。スニペットでは、まだリクエストしていないトークンとの接続を作成しています。 – gnur

関連する問題