2014-02-12 23 views
0

嘿所有我想獲得一個新聞供稿(家飼料),但這似乎沒有工作:Facebook的我的/ home不顯示數據

<?php 
require '../src/facebook.php'; 

$facebook = new Facebook(array(
    'appId' => 'XXXXXXXXXXXXXXXX', 
    'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', 
    'fileUpload' => true, 
    'cookie' => true 
)); 

$user = $facebook->getUser(); 

if ($user) { 
    try { 
    $user_profile = $facebook->api('/me'); 
    $access_token = $facebook->getAccessToken();  
    $feed   = $facebook->api('/me/home?access_token=' . $access_token); 
    print_r($feed); 

etc etc.... 

如果我註釋掉$飼料print_r($ feed)行然後它工作並顯示我的用戶信息。但是,將它留下的評論似乎阻止它繼續顯示其他內容。

我也曾嘗試:

$feed   = $facebook->api('/me/home); 

而且還生產什麼。

對於我的應用中心權限,我設置了執行此操作所需的權限(read_stream)等等。

我在想什麼?

enter image description here

+0

您的'應用中心權限'僅適用於通過您的應用詳細信息頁面首次授權您的應用的用戶 - 您需要向所有其他用戶顯示請求的範圍,並向您的應用輸入入口點 - 你在做那個嗎? – Igy

+0

我在哪裏把範圍在我的代碼呢?我認爲在應用程序設置中使用它就是用戶接受它時需要的全部內容? – StealthRT

回答

0

我認爲最好的辦法就是使用圖形API:

`$graphURL = https://graph.facebook.com/$current_user_id/home?access_token=$user_access_token.` 

您可以使用捲曲,以獲得詳細信息。實例捲曲功能

function curl_get_file_contents($URL) { 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $URL); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT ,0); 
curl_setopt($ch, CURLOPT_TIMEOUT, 400); 
$contents = curl_exec($ch); 
$err = curl_getinfo($ch,CURLINFO_HTTP_CODE); 
curl_close($ch); 
$contents=json_decode($contents,true); 
if ($contents) return $contents; 
else return FALSE; 

}

例如: - $ user_home = curl_get_file_cont經濟需求測試($ graphURL);

1

似乎沒有這一點,是因爲我:

$statusUrl = $facebook->getLoginStatusUrl(); 
$params = array(
    'scope' => 'read_stream' 
); 

工作,我補充說了! :o)