Конечная точка API facebook graph для получения "нравится, акции, комментарии" для сообщений (а)
Facebook планирует отказаться от поддержки FQL после V2.0 https://developers.facebook.com/docs/apps/changelog/#v2_0_fql
Следующая задача может быть легко выполнена с помощью FQL
SELECT like_info.like_count, comment_info.comment_count, share_count
FROM stream
WHERE post_id = "POST_ID_HERE"
Я не могу найти замену вышеуказанному методу в графе api. Я знаю, что мы можем получать отзывы и комментарии, например,
POST_ID/likes?summary=true AND
POST_ID/comments?summary=true
но я не могу найти аналогичную конечную точку для акций.
ПРИМЕЧАНИЕ. Я не ищу решения, которые используют URL-адрес и график запросов api для этих URL-адресов, скорее я ищу решение найти количество акций по POST_ID
PAGE_ID/feed?fields=comments.limit(1).summary(true),likes.limit(1).summary(true)
Я посмотрел.
Результат должен быть примерно таким:
{
"data": [{
"like_info": {
"like_count": 3506
},
"comment_info": {
"comment_count": 263
},
"share_count": 278
}]
}
Любая помощь будет высоко оценена.
Ура!
UPDATE. Это была проблема маркера доступа, поскольку токен, который я использовал, не имел разрешения "read_stream".
Ответы
Ответ 1
В конце поля не требуется .summary(true)
. Это принесет всегда общее. Но likes
и комментариям требуется .summary(true)
Пример:
[POST_ID]?fields=shares,likes.summary(true),comments.summary(true)
Улучшенная версия работает с Graph Api v2.11 (добавьте ограничение (0), чтобы удалить списки похожих и комментариев и получить только сводные данные):
[POST_ID]?fields=shares,likes.summary(true).limit(0),comments.summary(true).limit(0)
Это приведет к общему количеству акций, комментариям и пожеланиям.
У вас может быть access_token с разрешением read_stream
для получения количества акций.
Ответ 2
Получить понравившиеся, комментарии и акции и все 3 вместе.
Проверьте мои анны: fooobar.com/questions/277202/...
Улучшенная версия (добавьте ограничение (0), чтобы удалить список понравившихся и получить только сводку):
114916098537132_1265715836790480?fields=shares,likes.limit(0).summary(true),comments.limit(0).summary(true)
Ответ 3
"https://graph.facebook.com/v2.2/PAGEid_POSTid/?
fields=shares&access_token=YOUR_ACCESS_TOKEN";
Я использую вышеупомянутую конечную точку.
Замените $pageID
и $videoID
(post id) вашими переменными.
"https://graph.facebook.com/v2.2/" . $pageID."_".$video->id . "/?fields=shares&access_token=YOUR_ACCESS_TOKEN";
Ответ 4
Получить комментарии, акции и понравитесь на счет:
[POST_ID]/?fields=id,shares,likes.limit(0).summary(true),comments.limit(0).summary(true)
Я включил limit(0)
, чтобы API не выдавал фактические комментарии и предпочтения. Я считаю, что предел по умолчанию - 25
.
Обратите внимание: вы также можете добавить эти поля в /feed
, чтобы получить эти данные для всех сообщений на странице.
[PAGE_ID]/feed?fields=id,shares,likes.limit(0).summary(true),comments.limit(0).summary(true)
Заключительная записка. Если при возврате данных отсутствуют данные shares
, это связано с тем, что почта не имеет общих ресурсов. Вместо возврата "shares": {"count": 0}
раздел разделов будет полностью удален.