Facebook粉丝页面饲料在网站(年龄受保护)
问题描述:
需要帮助试图从粉丝页面上获得帖子/墙上帖子,这是在Facebook上age-gated以显示在我的网站上。Facebook粉丝页面饲料在网站(年龄受保护)
粉丝页面的年龄门控只让那些17岁以上的人看到它(当他们登录到Facebook)。但是,我的网站位于年龄门(本地)后面,所以我想在我的网站上显示该Facebook页面的帖子。
我以前见过它,但我永远无法看到该人的代码,以查看他/她是如何做到的,我无法找到任何已尝试或成功将其关闭的人。
我创建Facebook上的应用程序,绑到我的帐户,即能看到在Facebook上的任何网页(无论是年龄限制与否):
这里是我的代码
<?php
function fetchUrl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
$feedData = curl_exec($ch);
curl_close($ch);
return $feedData;
}
$profile_id = "(Page id)";
//App Info, needed for Auth
$app_id = "123456789";
$app_secret = "123456789abcdefghij";
$authToken = fetchUrl("https://graph.facebook.com/oauth/access_token?type=client_cred&client_id={$app_id}&client_secret={$app_secret}");
$json_object = fetchUrl("https://graph.facebook.com/{$profile_id}/posts?{$authToken}");
$feedarray = json_decode($json_object);
echo $json_object;
foreach ($feedarray->data as $feed_data)
{
echo "<h2>{$feed_data->name}</h2><br />";
echo "{$feed_data->message}<br /><br />";
}
?>
该代码适用于没有年龄门限的页面,但是那些做了,它返回为无效(由于$ authToken没有返回任何内容,因此JSON无法处理任何内容)。
任何人都想帮助我弄清楚这一点吗?
答
大部分与该应用程序访问令牌访问的页面仅限于从公众的Facebook页面检索数据时,一个任何人都可以无需登录打开。 但对于这里的特殊情况下,帖子要拉,都来自年龄门控页。所以Facebook要求你登录(如果你还没有),以便它可以决定显示或不显示该页面。 同样也documented为:
阅读页面,您需要:
- 公众和非人口统计学限制网页应用程序或用户访问令牌
- 为受限制的页面用户的access_token即当前用户能够查看(无需特殊权限)
因此,您需要使用utili ze 用户访问令牌访问该页面,以便Facebook可以允许您的应用程序访问Page的帖子。
看起来您正在使用应用访问令牌。我对么? – 2013-04-05 03:14:12
是的。有不同的方法吗? – Keoki 2013-04-05 15:50:56