2014-09-30 34 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