簡體   English   中英

Twitter oAuth登錄。 如何首次獲取getAuthorizeURL(authorize),以及在用戶授予權限后如何獲取(身份驗證)

[英]Twitter oAuth login. How to get getAuthorizeURL(authorize) for first time and (authenticate) once user has granted permissions

我正在使用Twitter oAuth PHP庫(由Abraham Williams創建)來為我的Web應用程序使用登錄登錄Twitter。

答:代碼模型如下所示:

1. Twitter設置中的回調URL設置為: 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.預期的行為/結果

  1. 如果用戶是第一次用戶,則生成授權URL(〜/ authorize?oauth_token = token)
  2. 一旦用戶授予了對應用程序的權限,便會生成身份驗證URL(〜/ authenticate?oauth_token = token),以供將來登錄

C.查詢

  1. 該方法對預期行為是否正確
  2. 我是否已要求用戶是否是首次使用用戶使用授權url,否則是否使用身份驗證url(類似於登錄和注冊)
  3. 有沒有辦法檢查用戶是否使用(onetime_oauth_token或其他方式)授權了應用程序

D.預先感謝您:) ..您是救生員。

用這個 -

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM