0

我做一個Facebook應用程序,現在我們從服務器改變它,我再次運行代碼來測試它,我發現它完美,除了一個FQL。我得到的用戶信息 - >(/ ME)Facebook的API返回什麼,但我有我的數據

的FLQ作品(我與Facebook的工具進行測試)。我的連接和範圍是正確的。任何想法?

我離開你我FQL

$scope = 'email,read_stream'; 
$facebook = new Facebook(array(
    'appId' => $app_id, 
    'secret' => $app_secret, 
)); 

// Get the current user 
$user = $facebook->getUser(); 
    $fql = "SELECT type, source_id, share_count, likes, permalink, description, post_id, message, target_id, created_time, attachment 
       FROM stream 
       WHERE source_id = me() and type in (46, 80) 
       order by created_time desc 
       LIMIT 500"; 
    $param = array(
    'method' => 'fql.query', 
    'query'  => $fql, 
    'callback' => '' 
    ); 

    $fqlResult = $facebook->api($param); 
    print_r($fqlResult); 

回答

1

,我發現我的問題,

代碼工作,但我要求的兩種特定類型。 和類型(46,80)

當我刪除它,它出現在所有的流:)

感謝大家

1

在參數數組,增加一個參數:ACCESS_TOKEN並給它有效的訪問令牌值

+0

嗨@Shadowfax,感謝,但兩件事情。 1。爲什麼這與完全相同的代碼「SELECT friend_count FROM user WHERE uid = me()」和兩個我如何獲得訪問令牌? – Edig

+0

不工作 $ =的access_token $ facebook-> getAccessToken(); \t \t // Exportamos待辦事項洛斯DATOS \t $ FQL =「SELECT類型,SOURCE_ID,SHARE_COUNT,喜歡的永久鏈接,描述,POST_ID,消息,target_id,CREATED_TIME,附着 \t \t \t \t FROM流 \t \t \t \t WHERE SOURCE_ID =我()和通過CREATED_TIME遞減輸入(46,80) \t \t \t \t順序 \t \t \t \t LI麻省理工500強「; \t $ PARAM =陣列( \t '方法'=> 'fql.query', \t '查詢'=> $ FQL, \t '回調'=> '', \t 'ACCESS_TOKEN'=> $的access_token \t); – Edig

2

我不會用FQL親自擔任是有原因的他們會貶低舊的API,但爲了訪問您需要通過API爲您的應用程序授予訪問權限的用戶的Feed數據,它應該自動處理access_tokens,但是當您的用戶使用您要使用的網站登錄時

$params = array(
    'scope' => 'read_stream, friends_likes', 
    // Access to feed data (read_stream) and whatever else you need 
    'redirect_uri' => 'https://www.myapp.com/post_login_page' 
); 

$loginUrl = $facebook->getLoginUrl($params); 

然後你可以使用API​​查詢訪問所有你想要的信息:

$facebook->api('/me?fields=feed.fields(source,id,shares,likes,link,description,message,created_time)', 'GET'); 

我強烈建議使用Facebook Graph API Explorer測試API查詢和檢索所需

希望幫助隊友的所有信息!

相關問題