Определить погоду пользователю понравилось фото или нет. API-интерфейс Facebook Graph v2.2

Я работаю над приложением Facebook (JS sdk). В этом приложении пользователь может публиковать лайки/комментарии к фотографии. Для этого действия внизу фотографии отображается кнопка «Нравится». Но если пользователю уже понравилась конкретная фотография, то мы не показываем там кнопку «Нравится». Для этого нам нужно знать, понравилось ли фото пользователю погоды или нет. Это можно узнать с помощью FQL

 SELECT object_id,like_info,comment_info FROM photo WHERE object_id=343907262480651

И он возвращает логический флаг data["like_info"]["user_likes"]

Я переношу свой код с Graph API v1.0 на v2.2. Так что FQL будет больше доступен.

Мне нужно решение в Graph API 2.2, похожее на флаг user_likes. Я много искал это, но не получил то, что именно я хочу. Есть ли альтернативный способ добиться этого?

Спасибо.


person durgesh.patle    schedule 24.02.2015    source источник


Ответы (2)


Чтобы получить лайки для объекта, вы делаете вызов

/{object-id}/likes

Если вы хотите, чтобы общее число было полем, вам нужно установить поле summary=true

person Steve K    schedule 24.02.2015
comment
Я могу получать лайки и считать лайки. Мой вопрос: как узнать, лайкнул ли пользователь пост или нет? - person durgesh.patle; 24.02.2015
comment
Я также ищу решение для этого случая. Страница изображения facebook имеет вид facebook.com/fbid=123..... если использовать fbid в качестве идентификатора объекта, я получаю сообщение об ошибке. Есть ли способ проверить через URL-адрес facebook? - person Alex Guba; 16.02.2017

Я пытаюсь выполнить точную вещь. До сих пор я не мог найти ни одной конечной точки, которая с готовностью скажет вам, понравился ли пользователю пост или нет. Но один обходной путь — вызвать конечную точку /{object-id}/likes, которая вернет вам что-то вроде следующего:

{
  "data": [
    {
      "id": "808004209267865", 
      "name": "Kailey Nicole"
    }, 
    {
      "id": "10204107012455593", 
      "name": "Brenda S. Coffelt"
    }
  ], 
  "paging": {
    "cursors": {
      "before": "OTU1NzQ4ODQxMTIyNDEz", 
      "after": "MTAyMDQxMDcwMTI0NTU1OTM="
    }, 
    "next": "https://graph.facebook.com/v2.3/10151929326420059/likes?pretty=0&limit=25&after=MTAyMDQxMDcwMTI0NTU1OTM="
  }
}

Затем вы можете легко найти идентификатор пользователя в этом массиве JSON. Если он существует, это означает, что пользователю нравится страница, в противном случае нет. Однако имейте в виду, что может быть нумерация страниц (в случае большого количества лайков), поэтому вам действительно придется продолжать использовать следующий URL-адрес, чтобы исчерпать все данные о лайках.

person ScatterBrain    schedule 06.04.2015