2013-05-20 45 views
0

我無法通過Facebook API在我的牆上顯示所有的facebook帖子,消息,照片等。基本上,結果集中缺少許多項目。我用FQL嘗試了以下內容:Facebook API如何獲得所有牆項目

$facebook = new Facebook(array(
       'appId' => FB_APPID, 
       'secret' => FB_SECRET, 
       'cookie' => true 
    )); 
     $fql = "SELECT post_id, actor_id, target_id, message FROM stream WHERE source_id =me() ORDER BY updated_time DESC"; 

    //Create Query 
    $params = array(
     'method' => 'fql.query', 
     'query' => $fql, 
    ); 
    //Run Query 
    $result = $facebook->api($params); 

但是,此供稿似乎缺少一些項目,我不知道爲什麼。

我也試圖與在http://graph.facebook.com/me/feed?access_token=<Access+token>讀圖飼料又一遍,我還沒有得到所有的飼料項目。

什麼問題?爲什麼我錯過了一些項目?

回答

2

使用facebook-> getLoginUrl與權限,請參閱https://developers.facebook.com/docs/reference/login/#permissions

$applicationurl = 'http://{yourwebsite}/facebook.php'; 

// Get User ID 
$user = $facebook->getUser(); 

if(empty($user)) 
{ 
    $params = array(
    'scope' => 'email', 
    'redirect_uri' => $applicationurl 
    ); 

$loginUrl = $facebook->getLoginUrl($params); 
header('Location: ' . $loginUrl ."\r\n"); 
exit; 
} 

使用此代碼的查詢之前。 您可以在類似uid = '.$user的查詢中使用$user。 在您的請求範圍部分設置您的權限,在上面的示例中發送電子郵件。

編輯 OP說,使用範圍「read_stream」,和它的作品

+0

我沒有使用getLoginUrl對用戶進行認證。我的範圍是publish_stream。我正在嘗試其他示波器,但到目前爲止我沒有看到區別。你建議哪個範圍? – John

+0

哦,我想通了。範圍應該是read_stream。現在它開始向我展示我所有的牆壁飼料。 – John

相關問題