2013-01-16 61 views
-2

我有以下代碼:Facebook的PHP SDK(最新 - 13年1月16日)訪問令牌

public function get_facebook() 
    { 
     $loginUrl = Helpers::fbLogin(); 

     if(Input::get('error')) 
     { 
      Session::flash('failure', 'You need to give permissions.'); 
      return Redirect::to('signup'); 
     } 
     else 
     { 
      $facebook = IoC::resolve('facebook-sdk'); 
      $uid = $facebook->getUser(); 
      $fbuser = $facebook->api('/me', 'GET'); 

      $user = User::where('uid', '=', $uid)->or_where('email', '=', $fbuser['email'])->first(); 

      if(is_null($user)){ 
       Session::flash('fbuser', $fbuser); 
       return Redirect::to('signup'); 
      } else { 
       Auth::login($user); 
       return Redirect::to('/'); 
      } 
     } 

     return Redirect::to($loginUrl); 
    } 

但我得到這個消息:當我打印的$facebook->getAccessToken() &試開放 An active access token must be used to query information about the current user.

而且我的應用程序與不同的Facebook帳戶我得到相同的token

什麼是access token &我們用它做什麼?

P.S.我已經正確設置了我的appID &密碼。問題是,有時它起作用,有時它不起作用。

回答

1

訪問令牌是令牌,由用戶從您的應用程序訪問您的信息。爲了獲得該令牌,用戶必須授權您訪問至少他的基本信息。

更多here

+0

因此爲每個用戶生成一個新的訪問令牌? –

+1

是的。他們也過了一段時間,所以他們會不斷變化的用戶 – Darvex

+0

嗯,我只得到APP的訪問令牌,而不是用戶。我認爲這就是爲什麼我得到這個錯誤:'必須使用一個活動的訪問令牌來查詢有關當前用戶的信息.'任何想法如何獲取用戶的訪問令牌? –