я пытаюсь привлечь больше пользователей, чем 100 (лимит по умолчанию). К сожалению, документация довольно проста (много вещей, которые я ищу в исходниках SDK) Но я понятия не имею, как передать SkipToken аргумента nextLink. Полагаю, в версии 1 SDK я просто расширяю URL-адрес в GET, но я хотел бы использовать версию 2 SDK. Я видел nextLink в дельта-запросе (но это нечто другое).
я пробую это, но это не работает.
$nextlink = str_replace('https://graph.microsoft.com/v1.0/users?$skiptoken=','',$response->getOdataNextLink());
$request = new UsersRequestBuilderGetRequestConfiguration();
$request->queryParameters = UsersRequestBuilderGetRequestConfiguration::createQueryParameters();
$request->queryParameters->expand = array('skiptoken' => $nextLink);
$response = $o365->users()->get($request)->wait();
я тоже попробую, я знаю, что параметра SkipToken нет
$request = new UsersRequestBuilderGetRequestConfiguration();
$request->queryParameters = UsersRequestBuilderGetRequestConfiguration::createQueryParameters();
$request->queryParameters->skiptoken = $nextLink;
$response = $o365->users()->get($request)->wait();
Спасибо.






В SDK v2 должен быть PageIterator для постраничного просмотра коллекции.
$users = $graphServiceClient->users()->get()->wait();
$pageIterator = new PageIterator($users, $graphServiceClient->getRequestAdapter());
$counter = 0;
$callback = function Microsoft\Graph\Generated\Models\User $user) use (&$counter) {
echo "Id: {$user->getId()}\n";
$counter ++;
return ($counter % 5 != 0);
};
while ($pageIterator->hasNext()) {
// iteration pauses and resumes after every 5 users
$pageIterator->iterate($callback);
echo "\nPaused iteration...Total users: {$counter}\n\n";
}