2014-09-23 133 views
4

我知道在stackoverflow上會出現類似的問題,但似乎並不適用於我的情況。Facebook Graph API - 已棄用fql的版本v2.1及更高版本

這裏是我的代碼:

public function fetchFriendDetails($accessToken, $userId) { // echo $accessToken; exit; 
     $curlUrl = 'https://graph.facebook.com/fql?access_token=' . $accessToken . '&pretty=0&q={' . urlencode('"v_1":"select uid,name,birthday_date,username,current_location from user where uid in (select uid1 from friend where uid2=me()) order by birthday_date desc"') . '}'; 

     $ch = curl_init($curlUrl); 
     curl_setopt($ch, CURLOPT_HEADER, 0); 
     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
     $output = curl_exec($ch); 
     curl_close($ch); 

     $intermediate = Util::convertJsonString($output, 'uid', '\,', ','); 
     return Util::convertJsonString($intermediate, 'id', '\,', ','); 
    } 

它給了我下面的輸出:

{"error":{"message":"(#12) fql is deprecated for versions v2.1 and higher","type":"OAuthException","code":12}} 

我知道它已經過時https://developers.facebook.com/docs/apps/changelog,但任何人都可以請幫我,我應該在我上面的代碼改變,因此它會返回準確的結果?

任何幫助將不勝感激。在此先感謝

回答

3

你需要的,如果你正在使用的令牌通過V2.1應用程序也不會不管你是什麼工作,發出特別請求低於2.1

https://graph.facebook.com/v2.0/fql?access_token=

另外一個版本。

+0

感謝您的回覆,但我知道它不會工作,但我應該怎麼做才能運行檢索結果形式此查詢 - 「從用戶選擇uid,名稱,生日日期,用戶名,current_location其中(選擇uid1朋友where uid2 = me())order by birthday_date desc' – 2014-09-24 04:35:58

+0

@RakeshShetty你無法檢索使用v2.0及以上版本的朋友的完整列表,請參閱changelog.https://developers.facebook.com/docs/apps/changelog – phwd 2014-09-24 10:28:42

+0

This沒有幫助,我試圖添加V2.0,仍然得到fql已棄用的版本V2.1和更高版本 – 2015-11-29 01:06:51

相關問題