Как получить доступ к нумерации страниц в UsersResponse с конечной точки отношений в InstaSharp?

У меня есть InstaSharp.Endpoints.Relationships.Authenticated объект EP_RELATIONSHIPSи я могу позвонить EP_RELATIONSHIPS.Follows() чтобы получить список пользователей, на которых я подписан. Я слежу за несколькими сотнями человек, но получаю результат только 50.

Когда я проверяю данные JSON на странице API Instagram с помощью консоли API, я вижу, что существует URL-адрес разбиения на страницы.

Другие возвращаемые объекты, такие как InstaSharp.Model.Responses.MediasResponse есть объект под названием .Pagination которые, кажется, обеспечивают эту функциональность.

Эта библиотека неполная? Почему нет нумерации страниц в Relationships ответ конечной точки и как я могу выполнить нумерацию страниц без необходимости переписывать собственную версию этой части InstaSharp?

3 ответа

Последняя версия Instasharp ( https://github.com/InstaSharp/InstaSharp) имеет свойство "Разбиение на страницы" в классе.

Существует также реализация нумерации страниц, используемой для возврата нескольких наборов страниц в библиотеке, также в методе Tags.RecentMultiplePages (..), который в будущем можно сделать более общим и развернуть для нескольких методов.

Чтобы уточнить ответ Дамиана, если вы посмотрите на модульные тесты на github InstaSharp, вы можете увидеть пример того, как использовать пагинацию:

    public async Task Follows_NextCursor()
    {
        //This test will fail if testing with an account with less than one page of follows
        var result = await relationships.Follows();
        result = await relationships.Follows(457273003/*ffujiy*/, result.Pagination.NextCursor);
        Assert.IsTrue(result.Data.Count > 0);
    }

Вы можете создать свой собственный объект с нумерацией страниц -> next_url | next_cursor. Возьмите JSON из ответа и десериализуйте его в свой собственный объект.

Другие вопросы по тегам