2013-05-03 88 views
14

似乎Facebook的變更職位的結果,幾個星期前,有可能從後閱讀評論數直接Facebook的圖形API評論數

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計數。

是否還有辦法讓總評論數?

+1

它應該仍然可以與FQL做到這一點,檢查出這個問題的答案:http://stackoverflow.com/questions/14371949/facebook-api-comment-count-via-fql – 2013-05-03 13:11:14

+1

非常感謝你! SELECT comment_info FROM stream WHERE post_id = ... works。如果您發佈答案,我可以接受。 – fuchs777 2013-05-06 08:09:09

+0

@ fuchs777我怎樣才能得到postId,你喜歡用「125909647492772_502974003098530」? – 2014-03-10 15:38:06

回答

28
+0

非常感謝這個解決方案。這應該是被接受的答案。 – Wishnu 2013-11-23 05:34:25

+0

確實。到目前爲止,這是我發現在沒有訪問令牌時不必遍歷所有結果的情況下獲得類似評論總數的唯一方式。謝謝! – jel 2014-02-28 00:35:57

+0

這個答案救了我很多工作。 – 2014-10-09 20:26:37

5

您可以通過FQL得到總評論數。看到這個問題,下面爲參考:

Facebook API - comment count via FQL

這裏有您需要查詢:SELECT comment_info FROM stream WHERE post_id = ...

+0

這個FQL查詢仍然工作?我得到一個空白的結果。 – eli 2013-08-28 17:51:26

+0

是的,這仍然有效。這聽起來像你可能遇到了權限問題。讓你已經請求了read_stream權限。 – 2013-08-28 20:54:59

+0

由於fb流對象的行爲,這給出了不完整的數據。您必須使用「限制」和「按順序」才能正確使用它。我更喜歡Veerle Struyf的解決方案。 – 2013-10-07 15:00:59

3

如果你想在Facebook上什麼都算。 (這個數字是可見的Facebook的用戶)

您應該使用FQL(Facebook查詢語言),而不是圖形API。

Facebook Query Language Reference

這種情況下,你應該查詢

SELECT comment_info FROM stream WHERE post_id = ... 
+0

它需要代幣 – Adeem 2014-03-20 05:53:00

-1

或者用更少的改變你excisting代碼,使用:

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

commentsCount持有的評論數活躍的孩子

+2

這將無法正常工作,因爲你得到評論分頁。每次通話只能獲得25條評論,之後您需要撥打下一頁。 – fuchs777 2013-07-12 07:35:11

-1

嘗試以下操作:

{ 
    "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會給評論數。

+0

感謝@nhahtdh進行編輯。 – Karm 2013-09-14 18:31:46

+0

這不行,看我的評論@ JesJørgensen回答 – fuchs777 2013-09-18 06:47:13

17

我有同樣的問題,只是增加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

此外,如果你願意,你可以添加其他參數;通過分離,

+1

你爲我節省了幾個小時。非常感謝 – 2014-09-04 07:31:09

2

你可以做這樣的請求:

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

它將返回職位,包括每個帖子的評論數的列表。 這裏我只返回評論ID,因爲我只需要每個帖子的評論數,但當然也可以包括許多其他領域:

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

8

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) 
+0

有沒有辦法獲得關於作者和共享時間共享的詳細信息,因爲它可以完成喜歡和評論? – emir 2017-01-03 15:17:53

+0

@emir對不起,隊友,沒有意識到:) – 2017-01-03 17:29:17

0

這與我的作品完美:

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

這回在評論數summary和是完美的,因爲你只需要批註計數在同一時間返回0條評論。