2014-05-25 26 views
0

我需要使用此應用程序打印我的朋友要發送的事件。 {user-id}/events不起作用,很可能是因爲訪問令牌不允許它!我的朋友列表已經被打印出來,我只需要把他們要去的事件撤出。我只知道如何讀取訪問令牌,但我不知道如何使用它提取數據。我已經經歷了無數的答案了,而且大多談一些類似語法? - >從Access令牌讀取數據 - 使用Facebook PHP SDK v 3.2.3

「GET/OAuth的/的access_token 的client_id = {APP-ID} & client_secret = {應用祕密} & grant_type = client_credentials「

......我只是沒有得到。這裏是我的代碼如下 - >

$access_token = $facebook->getAccessToken();  
     $get_at = "https://graph.facebook.com/me?access_token=" . $access_token; 

     echo "Acess tokens in real!"; //i was just fooling here to print the token 
     echo "<br />" . $get_at; 

     $user_profile = $facebook->api('/me','GET'); 
     echo "<pre>"; 
     print_r($user_profile); 
     echo "</pre>"; 

      $dost = $facebook->api('/me/friends','GET'); 

      foreach ($dost['data'] as $value) { 

     $friend_id = $value['id']; 
     $events = $facebook->api('/' . $friend_id . '/events'); //this should have worked, but did not! 
     echo "<pre>"; 
     echo "Friend Name: "; 
     print_r($value['name']); 
     echo "<br />"; 
     echo "Friends events: "; 
     print_r($events); 
     echo "</pre>"; 

和,我使用的是正確的權限呢! - >

$params = array(
     'scope' => 'public_profile, user_friends, email', 
     'redirect_url' => 'http://xxxxxxp.com' 
     ); 
     $login_url = $facebook->getLoginUrl($params); 
     echo 'Please <a href="' . $login_url . '">login.</a>'; 

我敢肯定,我缺少的小東西...... 任何想法,冠軍?

+0

沒有您的應用程序要求的權限,查看朋友的事件? –

+0

此外,假設您的應用程序確實要求正確的權限,您需要使用您的應用程序的令牌進行請求 - 而不是您的令牌,這是您在上面的代碼中擁有的內容 –

回答

0

有很多東西你失蹤。首先,你並沒有要求正確的權限。如果你想閱讀用戶的事件,你需要詢問user_events權限,如果你想閱讀朋友的事件,你需要在params數組的範圍變量中請求friends_events權限:

$params = array(
     'scope' => 'public_profile, user_friends, email, user_events, friends_events', 
     'redirect_url' => 'http://xxxxxxp.com' 
     ); 
$login_url = $facebook->getLoginUrl($params); 

其次,實際上你需要通過訪問令牌您檢索到的API調用:

$events = $facebook->api('/' . $friend_id . '/events?access_token='. $get_at); 
+0

DAMN IT!我錯過了這個基地!在實現這一點時,應用程序現在要求獲得事件許可。公牛的眼睛。但令人遺憾的是,事件許可必須發送給FB審查,所以我不能得到結果。 Facebook非常謹慎,該死的。但我想這解決了它。我想讓你知道,那已經有幾天了,我變得如此瘋狂。謝謝你這個人,你讓我的血壓恢復正常!乾杯! – codemode

+0

高興得到了幫助 - 我同意你的觀點:Facebook文檔 - 這很可怕,去年我在開發我的應用程序時遇到了類似的問題。 –

+0

哈哈好吧,那麼,你是我這一天的英雄哈哈。乾杯! – codemode

相關問題