facebook - 如何通过facebook graph api获取群组的所有帖子

标签 facebook facebook-graph-api

我想根据其 ID 从 facebook 组中获取所有帖子。我试过这个:

https://graph.facebook.com/".$group_id."/feed?time_format=U&".$authToken

这只会给我某些帖子。如果可能的话,如果不是通过分页 url,我希望所有帖子都可以通过单个 url 检索。但是分页 url 包含分页标记为

https://graph.facebook.com/55259308085/feed?limit=500&access_token=ACCESS_TOKEN&until=1298025645&__paging_token=55259308085_10150259582898086

什么是分页 token 和直到??

请指引我走向正确的道路。 谢谢。

最佳答案

set_time_limit(99999999);
ini_set('memory_limit', "9999M");

function fetchUrl($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 40);
    
    $data = curl_exec($ch);
    curl_close($ch);
    
    return $data;
}

$url_array = array();

function recurse_it($url, $c) {
    global $url_array;
    $feeds         = fetchUrl($url);
    $feed_data_obj = json_decode($feeds, true);
    if (!empty($feed_data_obj['data'])) {
        $next_url      = $feed_data_obj['paging']['next'];
        $url_array[$c] = $next_url;
        recurse_it($next_url, $c + 1);
    }
    return $url_array;
}

$url = "https://graph.facebook.com/55259308085/groups?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
$arr = recurse_it($url, 0);
print_r($arr);

其中 $arr 是所有可用分页链接的数组,我使用 foreach 循环遍历分页的所有内容。

关于facebook - 如何通过facebook graph api获取群组的所有帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14919731/

相关文章:

ios - Facebook iOS SDK 和 Passport -facebook 身份验证

android - 将 Facebook SDK 导入我的 android 项目 - Gradle 错误

facebook - iOS 6 社交框架无法设置或没有警报

Java + RestFB API : Getting fresh Page Access Token without messing with AppID, appSecret

facebook-graph-api - 我如何获取access_token然后使用它?

适用于 iOS 的 Facebook API,获取 friend 的个人资料图片

facebook - 来自 Facebook Graph API 的已验证电子邮件地址

java - 将图像发布到 Facebook 页面

facebook - 使用 FB.ui 发布到页面墙

mysql - facebook、twitter 等网站需要 mysql 许可证吗