Как преодолеть лимит записей, возвращаемых в Microsoft Graph? - PullRequest
0 голосов
/ 06 мая 2020

Я отправил через почтальона следующий запрос:

https://graph.microsoft.com/v1.0/auditLogs/signIns

И в ответе было 1000 записей. Есть ли способ преодолеть лимит записей? Я пробовал:

https://graph.microsoft.com/v1.0/auditLogs/signIns?$top=5000

Получил тот же результат. Всего 1000 записей. Есть ли способ преодолеть этот предел? Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 06 мая 2020

Параметр запроса $top не предназначен для использования в качестве альтернативы разбиению по страницам. Он предназначен для управления размером 1003 * каждой страницы и имеет верхний предел 999 записей на страницу. Из документации :

$ top принимает минимальное значение 1 и максимальное значение 999 (включительно).

Размер страницы по умолчанию для большинства конечных точек это 100 записей. В большинстве случаев это значение по умолчанию следует оставить по умолчанию. Есть исключения, но в большинстве случаев это делается для уменьшения размера страницы (т. Е. Оптимизировано для устройств с низким объемом памяти или мобильных устройств).

Вместо того, чтобы устанавливать большие размеры страницы, вы должны перебирать выгружаемые данные, возвращаемые Graph. Этот процесс описан в Пейджинг данных Microsoft Graph в вашем приложении . Например, используя C#, вы можете сделать что-то в этом роде:

// Create a bucket to hold the final results
var userList = new List<User>(); 

// Request the first page of data
var usersPage = await graphServiceClient
    .Users
    .GetAsync();

// Add the first page of data to the final list
userList.AddRange(usersPage.CurrentPage);

// Repeate until all pages have been returned
while (usersPage.NextPageRequest != null)
{
    usersPage = await usersPage.NextPageRequest.GetAsync();
    userList.AddRange(usersPage.CurrentPage);
}
2 голосов
/ 06 мая 2020

$ top принимает минимальное значение 1 и максимальное значение 999 (включительно).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...