Подтвердить что ты не робот

График Facebook api comment count

кажется, что Facebook изменил результат сообщений, несколько недель назад было возможно прочитать комментарий с поста напрямую

https://graph.facebook.com/125909647492772_502974003098530

у вас есть что-то вроде

...
"comments": {
"data": [
  {
    "id": "502974003098530_78616446", 
    "from": {
      "name": "Mathias Fritz", 
      "id": "526559276"
    }, 
    "message": "saugeil!", 
    "can_remove": false, 
    "created_time": "2013-03-26T14:58:01+0000", 
    "like_count": 1, 
    "user_likes": false
  }
], 
"paging": {
  "cursors": {
    "after": "MQ==", 
    "before": "MQ=="
  }
}, 
"count": 1

но теперь счет отсутствует.

Я провел некоторое исследование документации по графику, но единственное изменение в этом направлении, похоже, состоит в том, что комментарии теперь могут содержать комментарии... и эти комментарии учитываются в поле с именем comment_count.

Есть ли способ получить общий счетчик комментариев?

4b9b3361

Ответ 2

У меня была такая же проблема, просто добавив likes.summary(true),comments.summary(true) в параметр в "полях" для меня.

например. Я использовал https://graph.facebook.com/me/feed?access_token=ACCESS_TOKEN&fields=story,from,story_tags,likes.summary(true),comments.summary(true)

вместо https://graph.facebook.com/me/feed?access_token=ACCESS_TOKEN

Также вы можете добавить другие параметры, если хотите; разделенных символом a,

Ответ 3

summary=true - это то, что вы ищете

Получить количество просмотров:

114916098537132_1265715836790480/likes?summary=true

Получить количество комментариев

114916098537132_1265715836790480/comments?summary=true

Получить количество акций:

114916098537132_1265715836790480?fields=shares

И последнее [объединение всех 3]

114916098537132_1265715836790480?fields=shares,likes.summary(true),comments.summary(true)

Улучшенная версия (добавьте ограничение (0), чтобы удалить список понравившихся и получить только сводку):

114916098537132_1265715836790480?fields=shares,likes.limit(0).summary(true),comments.limit(0).summary(true)

Ответ 5

Это прекрасно работает со мной:

fields=shares,created_time,comments.summary(true).limit(0)

Этот комментарий возвращается в summary и возвращает 0 комментариев в то же время, что идеально, поскольку вам нужен только комментарий.

Ответ 6

Если вы хотите рассчитать все на Facebook. (Этот номер отображается для пользователя Facebook)

Вместо графического API вы должны использовать FQL (Facebook Query Language).

Справочник по языку запросов Facebook

В этой ситуации вы должны запросить

SELECT comment_info FROM stream WHERE post_id = ...

Ответ 7

Вы можете делать такие запросы:

{pageid}/posts?fields=comments.summary(1){id}

Он вернет список сообщений, включая количество комментариев каждого сообщения. Здесь я вернул только идентификатор комментария, потому что мне нужно только количество комментариев за сообщение, но, конечно, вы можете включить много других полей:

{pageid}/posts?fields=comments.summary(1){id,message},id

Ответ 8

Если у вас есть приложение в Facebook, его очень просто без входа в систему, вы можете получить его.

https://graph.facebook.com/?id={URL}&fields=engagement&access_token={your-app_id}|{your-app_secret}

Ответ будет таким:

{
  "engagement": {
    "reaction_count": 36,
    "comment_count": 2,
    "share_count": 20,
    "comment_plugin_count": 3
  },
  "id": "https://www.example.com"
}

Ссылка: https://developers.facebook.com/docs/facebook-login/access-tokens

Ответ 9

Или чтобы сделать меньше изменений для вас, используя код, используйте:

    $.each(json.data,function(i,fb){
    ...
       var commentsCount = 0
       if(fb.comments!=undefined){
          commentsCount=fb.comments.data.length
       }
    ...
    }

commentsCount содержит количество комментариев для активного ребенка

Ответ 10

Попробуйте следующее:

{
    "data": [
        {
            "id": "447235535389660_1226199",
            "from": {
                "name": "Harjeet Walia",
                "id": "100004980601083"
            },
            "message": "Price",
            "can_remove": false,
            "created_time": "2013-09-06T10:39:01+0000",
            "like_count": 0,
            "user_likes": false
        },
        {
            "id": "447235535389660_1226152",
            "from": {
                "name": "Shoba Dhyani Jakhmola",
                "id": "100000906896060"
            },
            "message": "baap re kitna mehnga !",
            "can_remove": false,
            "created_time": "2013-09-06T10:05:09+0000",
            "like_count": 0,
            "user_likes": false
        }
    ],
    "paging": {
        "cursors": {
            "after": "MQ==",
            "before": "NA=="
        }
    }
}

затем

int commentCount = <JsonNode Var with above data>.path("comments").path("data").size();

Здесь commentCount будет указывать количество комментариев.