2016-05-23 21 views
2

ユーザーデータを取得するためにtwitter oauthを使用する際に少し問題がありました。twitterの使い方Oauthがphpやzendフレームワークでリクエストを取得してユーザーデータを取得する

// TWITTER APP KEYS 
    $consumer_key = 'some data'; 
    $consumer_secret = 'some data'; 

    // GETTING ALL THE TOKEN NEEDED 
    $oauth_verifier = $_GET['oauth_verifier']; 
    $token_secret = $_COOKIE['token_secret']; 
    $oauth_token = $_COOKIE['oauth_token']; 

    // EXCHANGING THE TOKENS FOR OAUTH TOKEN AND TOKEN SECRET 
    $connection = new TwitterOAuth($consumer_key, $consumer_secret, $oauth_token, $token_secret); 
    $access_token = $connection->oauth("oauth/access_token", array(
     "oauth_verifier" => $oauth_verifier 
    )); 

    $accessToken = $access_token['oauth_token']; 
    $secretToken = $access_token['oauth_token_secret']; 

    $connection = new TwitterOAuth($consumer_key, $consumer_secret, $accessToken, $secretToken); 
    $connection->get("users/search"); 
    $content = $connection->get("account/verify_credentials"); 
    $media1 = $connection->upload('media/upload', [ 
     'media' => $this->session->image['generatedAbs'] 
    ]); 
    $parameters = [ 
     'media_id' => implode(',', [ 
      $media1->media_id_string 
     ]) 
    ]; 
    $result = $connection->post('account/update_profile_banner', $parameters); 

今私はそれが 可能だ場合、私は公式twitter dev documentationを読んで、私は見つけられませんでした、接続しているユーザの名前と姓のように彼のプロフィール画像リンク、メールアドレスと自分の場所をいくつかの情報を取得します私の方法でそれを使用する方法の方法は、私はPHPを使用してTwitterから情報を取り出すに

$connection = new TwitterOAuth($consumer_key, $consumer_secret, $accessToken, $secretToken); 
    $connection->get("https://api.twitter.com/1.1/users/profile_banner.json?screen_name=twitterapi"); 
    $result = json_decode($connection); 
    // debug the returned result 
    Zend_Debug::dump($result,$label="debug gass" , $echo= true); 

答えて

2

ので、この方法を使用して、私のコントローラをデバッグしようとしましたが、TwitterのOAuthがちょうど私が手順を列挙することができ、超簡単です

1)面白い部分が今ある(ステップは明確に質問

2で説明されています)oauth_tokenとoauth_verifierの取得:D、あなたがあなたのコントローラで次のようにコピー&ペーストする必要がありますが、ページをコールバック:

$connection = new TwitterOAuth($consumer_key, $consumer_secret, $accessToken, $secretToken); 
$content = $connection->get("account/verify_credentials"); 

今、あなたは本当にただの結果をデバッグ、すべてを終えた:D

Zend_Debug::dump($content->profile_image_url , $label = "achref gassoumi", $echo = true); 

PS:私は私が働いていることから、Zendのデバッガを使用しますが、他のフレームワークとか、純粋なPHPを使用している場合だけ、次の結果をエコー例:

echo $credentials->screen_name; 
echo $credentials->profile_image_url ; 
echo $credentials->location; 
echo $credentials->profile_background_image_url; 

その他の情報を検索するには、オフィシャルtwitter OauthのドキュメントGET account/verify_credentialsをご覧ください。

関連する問題