2014-09-30 32 views
0

我使用Twitter的OAuth PHP庫(由亞伯拉罕·威廉姆斯)使用登錄 - - 嘰嘰喳喳我的web應用。Twitter oAuth登錄。如何獲得getAuthorizeURL(授權)的第一次(認證),一旦用戶已授予的權限

答。代碼模型是這樣的:

1.回調網址在Twitter上設置被設定爲: http://example.com/entrypoint/twitterlogin.php

2.The twitterlogin.php file 
<?PHP 
    if (empty($_GET['oauth_verifier'])){   
     $request_token = $twitteroauth->getRequestToken(); 
     $_SESSION['onetime_oauth_token'] = $request_token['oauth_token']; 
     $_SESSION['onetime_oauth_token_secret'] = $request_token['oauth_token_secret']; 
    } 

    if (!empty($_GET['oauth_verifier']) && !empty($_SESSION['onetime_oauth_token']) && !empty($_SESSION['onetime_oauth_token_secret'])) {   
     $twitteroauth = new TwitterOAuth(YOUR_CONSUMER_KEY, YOUR_CONSUMER_SECRET, $_SESSION['onetime_oauth_token'], $_SESSION['onetime_oauth_token_secret']);   
     $access_token = $twitteroauth->getAccessToken($_GET['oauth_verifier']);   
     $GoesToDB = $access_token['oauth_token']; 
     $GoesToDBS = $access_token['oauth_token_secret']; 
     $user_info = $twitteroauth->get('account/verify_credentials'); 
     $GoesToDBArray = $user_info; 
    }else{   
     if ($twitteroauth->http_code == 200) { 
      //generates ~/authenticate?oauth_token=token 
      $url = $twitteroauth->getAuthorizeURL($request_token['oauth_token']); 

      //generates ~/authorize?oauth_token=token 
      //$url = $twitteroauth->getAuthorizeURL($request_token['oauth_token'], false);//when and how to use this 
      exit(header("refresh:0;url=".$url));  
     } else { 
      //some error handler   
     } 
    } 
?> 

B.Expected行爲/結果

  1. 如果用戶是第一次用戶然後生成授權URL(〜/授權?組oauth_token =令牌)
  2. 一旦在U SER已授予權限的應用程序生成身份驗證URL(〜/認證?的oauth_token =令牌)用於以後登錄

C.Queries

  1. 是接近正確的預期行爲
  2. 待辦事項我有要求用戶使用授權的網址,如果他是第一次使用,否則使用身份驗證URL(類似的登入和註冊)
  3. 有沒有辦法來檢查用戶是否授權使用(onetime_oauth_token別的應用程序或)

D.提前感謝你:) ..你是一個救世主。

回答

0

使用此 -

$url = $twitteroauth->getAuthorizeURL($request_token['oauth_token'],TRUE); 
+0

你好@sahil,謝謝,您的答覆。我主要關心的是,如何使用「真/假」參數「驗證/授權」 – experimentalcoder 2015-01-30 10:43:14