我正在尝试使用以下api url请求获取帖子的所有评论:
$fb->get($yourPage.'/feed?fields=comments.limit(100)&limit=25&since=2017-7-01&until=2017-7-31', $accessToken);
但有些帖子有超过500条评论,这些评论在api响应中产生了“(下一个)”的分页。现在我想检索所有的评论,所以我如何通过“评论”分页,因为我知道如何通过这些代码分页:
$response = $fb->get($yourPage.'/feed?fields=comments.limit(500)&limit=25&since=2017-7-01&until=2017-7-31', $accessToken);
$comments = $response->getGraphEdge();
$totalcomments = array();
if ($fb->next($comments)) {
//Do something if there is pagination in the posts
}
那么我如何做同样的评论呢?我在堆栈和谷歌搜索了很多,但没有问题指向这...谢谢
答案 0 :(得分:0)
每个评论对象都包含一个分页对象:
{
"comments": {
"data": [
{
"created_time": "2017-09-01T12:06:19+0000",
"from": {
"name": "xxx",
"id": "1234"
},
"message": "xxx",
"id": "1234"
},
...
],
"paging": {
"cursors": {
"before": "NzkZD",
"after": "NzgZD"
},
"next": "https://graph.facebook.com/v2.10/cccccc/comments?access_token=xxx&pretty=0&limit=2&after=NzgZD"
}
},
"id": "xxx"
}
对于您获得的每个帖子,您需要一个子例程(例如,使用递归函数)在单独的API调用中使用“next”参数来获取所有注释。