Как на самом деле работает GET / tags / <tag> / media / недавняя нумерация в Instagram?
Я пытаюсь использоватьОбновления фотографий в реальном времени API для получения всех изображений с определенным тегом по мере их поступления. Поскольку обновления этого API действительно сообщают только вамэто новый контент существует (но нечто это так), я запрашиваю последние медиа с моим тегом всякий раз, когда получаю уведомление, что что-то изменилось.
Проблема, с которой я сталкиваюсь, заключается в том, что я постоянно получаю дубликаты, возвращаемые этим запросом. Документация говорит, что этот API выполняет разбиение на страницы, но я не могу заставить его работать вообще.
ДокументацияВот говорит использоватьmin_id
а такжеmax_id
в строке запроса для управления нумерацией страниц, однако он говорит:
MIN_ID - вернуть медиа до этого min_id.
MAX_ID - вернуть медиа после этого max_id.
Это кажется задом наперед (обычно min должен возвращать элементы выше минимума, а max должен возвращать элементы ниже максимума, чтобы при указании обоих вы получили ограниченный диапазон).
Фактический JSON, который я получаю из своих запросов, включает в себя объект разбиения на страницы, например:
"pagination": {
"next_max_tag_id": "1387272337517",
"deprecation_warning": "next_max_id and min_id are deprecated for this endpoint; use min_tag_id and max_tag_id instead",
"next_max_id": "1387272337517",
"next_min_id": "1387272345517",
"min_tag_id": "1387272345517",
"next_url": "https://api.instagram.com/v1/tags/cats/media/recent?access_token=xxx&max_tag_id=1387272337517"
}
Параметр, указанный вnext_url
свойствоmax_tag_id
неmax_id
как говорится в документации
Существует также предупреждение об устаревании, в котором говорится, чтоnext_max_id
а такжеmin_id
устарели, но поскольку в объекте разбивки на страницы есть свойства с такими именами, я не знаю, являются ли параметры запроса или свойства объекта устаревшими.
Я думаю, что это означает свойства, потому что строка запроса никогда не использовала параметрnext_max_id
, но тогда сообщение об устаревании говорит использоватьmin_tag_id
а такжеmax_tag_id
и нетmax_tag_id
свойство объекта нумерации страниц (простоnext_max_tag_id
).
Независимо от всей этой противоречивой документации, кажется, не имеет значения, что я передаю в строке запроса - я продолжаю получать повторные носители в последующих запросах. Может кто-нибудь помочь мне разобраться в этом API? Все, что я действительно хочу, это получить теги, которые являются новыми, так как мой последний запрос.