我遇到了这个问题,所以我在这里提交。
我为我的母亲创建了一个facebook粉丝页面和一个网站来宣传她的音乐。由于她已经习惯了facebook,我决定不再创建一个完整的后台,网站只会显示粉丝页面的帖子,照片和事件。我这样做是为了简单地调用
$data= $fb->api('/'.PAGE_ID.'/posts?fields=id');
例如(或'notes','events'......)。问题是我必须使用我从我自己的'me / accounts /'权限获得的特定访问令牌。不时(比如每个月),我必须转到Graph API Explorer,获取该令牌,并将其保存在网站配置中。
我想知道我是否无法在我的网站上生成访问令牌服务器端,但我似乎无法实现它。 facebook PHP SDK无法访问我的 api('/ accounts')图表结果,除非我是认证用户(显然),并且调用 api(PAGE_ID。'?字段= access_token')仅返回页面的ID。
我做错了什么? facebook php sdk可以代表我进行api调用(独立于用户)吗?
更多信息:我创建了粉丝页面和一个名为Feed阅读器的简单应用,具有* manage_pages *权限。我是唯一授权该应用程序的用户,我不希望网站上的用户必须登录(为什么他们?这是我的粉丝页面,为什么我需要他们的* manage_page *权限?)。
说实话,我觉得公共帖子也可以在图表api中公开,但我确信有理由。
答案 0 :(得分:1)
说实话,我觉得公共帖子也可以在图表api中公开,但我确信有理由。
您可以访问任何用户的公开帖子,如下所示: 注意:这假设您在此使用PHP SDK http://developers.facebook.com/docs/reference/php/
$facebook = new Facebook(
array(
'appId' => 'fb_app_id',
'secret' => 'fb_secret',
)
);
$url = '/' . 'fb_username' . '/posts?fields=id,name,created_time,message,story,type&limit=10'; // you might need to screw with this some
$page = $facebook->api($url);
while(count($page['data']) > 0)
{
foreach($page['data'] as $fb_post)
{
// USE THEM DATAS
}
// Keep retrieving next pages until spent
$url_parts = parse_url($page['paging']['next']);
$url = '/' . 'fb_username' . '/posts?' . $url_parts['query'];
$page = $facebook->api($url);
}
这是一个来自https://github.com/fyaconiello/WP_Social_Network_Posts/的示例,其中提取FB帖子并将其保存为WP帖子。它的目的是回答一个不同的问题。