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

Facebook graph api comment list sort, like 'orderby = desc'?

Я использую graph api для получения комментариев к изображениям, но сначала хочу отсортировать результаты, создав время, а затем вернусь к последним данным. Подобно оператору sql "order by create_time desc", я не знаю, есть ли такой параметр.

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

pagesize = 25;
offset = comments.count - pagesize;
limit = 25;

url = "https://graph.facebook.com/" + object_id + "/comments? access_token =" + access_token + "& limit =" + limit + "& offset =" + limit;

следующая страница:

offset -= 25

но comments.ount числа иногда не точны

и результат возврата URL-адреса запроса иногда не совпадает с

Чтобы иметь очень хорошее решение

Или я использовал неправильный путь ('limit и' offset Parameter)!!!


Спасибо за ваш ответ.

"Графический API" - существование кеша?

Я опубликую сообщение и 46 комментариев. requests url, задайте параметры:

смещение = 0 & предел = 1

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

Если я устанавливаю предельное значение больше, чем "comment.count", возвращенные данные - это все, официальный веб-сайт и согласованный с facebook

Из-за причины кэша?

Еще раз спасибо ~

4b9b3361

Ответ 1

@dbau - Вам еще лучше использовать FQL. По моему опыту, если вы не делаете очень простой вызов, у вас очень мало контроля над тем, что вы получаете через вызов Graph API.

Почему вы не хотите использовать FQL? FQL является конечной точкой Graph API. Есть еще некоторые данные, которые могут быть возвращены только через FQL.

Это даст вам результат, который вы ищете. Запрос должен быть закодирован в URL. Я оставил его в понятном тексте для ясности.

 https://graph.facebook.com/fql?access_token=[TOKEN]&q=
    SELECT id, fromid, text, time, likes, user_likes FROM comment
      WHERE object_id = [OBJECT_ID] ORDER BY time DESC LIMIT 0,[N]

Вы можете обнаружить, что вы не возвращаете комментарии [N] каждый раз, потому что Facebook отфильтровывает элементы, которые не видны владельцу access_token после выполнения запроса. Вы можете либо увеличить значение LIMIT, либо отфильтровать любые лишние результаты, или если вы используете пользователя access_token, вы можете добавить AND can_like = TRUE в предложение WHERE, чтобы гарантировать, что если они существуют, [N] публикует сообщения к текущему пользователю.

Ответ 2

API-интерфейс графика сначала возвращает последние объекты.

Facebook предоставляет 2 ключевых слова для фильтрации выбранных данных.

  • Предел: возвращает "ограничение" числа последних записей
  • Смещение: возвращает "ограничение" количества записей из позиции смещения.

Итак, чтобы получить последние комментарии "x", отправленные для объекта

?

https://graph.facebook.com/[OBJECTID] предел = [X] & смещение = 0

Чтобы получить следующие комментарии "X" (по страницам)

?

https://graph.facebook.com/[OBJECTID] предел = [X] & смещение = [Х * PAGENo]

Надеюсь, что ответ достаточно ясен для вас.