空白数组来自FQL的洞察细节

时间:2014-04-27 06:09:53

标签: facebook facebook-fql

我已经开发了这段代码,当我使用我的登录ID进行测试时它运行良好。当其他人登录其详细信息时,它显示错误(没有通过(FQL)获取数据。 代码是:

$facebook = new Facebook(array(
  'appId'  => "xxx",
  'secret' => "xxx",
  'cookie' => true,
));

$user = $facebook->getUser();

$loginUrl   = $facebook->getLoginUrl(
            array(
                'scope'         => 'offline_access,email,manage_pages,read_insights'
            )
    );


$pid = $_GET['pageid'];
echo $pid;
echo "<br /><br />";

$total_fans = $facebook->api(
    "/".$pid."/insights/page_fans"
);

echo "This page has total " . $total_fans[data][0][values][0][value] . "likes (unique).";

echo "<br /><br />";

$fans_country = $facebook->api(
    "/".$pid."/insights/page_fans_country"
);
if(empty($fans_country)){
    echo "<p>No country specific data retrieved..</p>";
} else {
    echo "<p>Countryvise like counts :</p> ";
    foreach ($fans_country[data][0][values][0][value] as $key => $value) {
            echo "<span style='float: left; width: 50px; background: #DCDCDC;'> ". $key ."</span>
            <span style='float: left; width: 50px;'>" . $value ."</span>
            </tr>";
    }
    echo "<br /><br />";
}

它起作用,当我使用我的FB帐户登录时,它将显示我的id为admin的页面,然后对于每个页面,它将获取总数,如计数和类似计数。 对我来说没关系,但是当其他人使用其帐户登录时,它会返回空白数组。

感谢

1 个答案:

答案 0 :(得分:0)

我猜您要求的是不存在的权限"insights" ... https://developers.facebook.com/docs/graph-api/reference/page/insights/处的文档说

  

需要具有 read_insights 权限的用户或网页访问令牌

要获取用户页面的页面访问令牌,请使用

GET /me/accounts