Msgraph-sdk-php v2 как передать SkipToken в запрос?

я пытаюсь привлечь больше пользователей, чем 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();

Спасибо.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
83
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В 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";
}

Листаем коллекцию

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

Соединение и отправка файлов cookie между несколькими службами приложений — Azure
Невозможно увидеть мою функцию триггера HTTP в приложении-функции Azure, развернутом конвейером Azure Devops ci cd
Blazor WebApp: исходное исключение: AADTS700025: клиент является общедоступным, поэтому ни «client_assertion», ни «client_secret» не должны быть представлены
Зачем использовать ключевое слово await в методе StartProcessingAsync класса процессора служебной шины Azure?
Функция xpath приложения логики возвращает результат в закодированном формате
Как получить доступ к учетной записи хранения из фабрики данных в разных подписках
Как разделить документ по страницам в Azure AI Search?
MS Graph API Недостаточно разрешений при использовании Python SDK, достаточно при выполнении обычных HTTP-запросов
Доступ запрещен при подключении к Службе приложений Azure с использованием учетных данных FTP в WinSCP
СЛЕДУЮЩАЯ страница: развертывание маршрутизатора в Azure

Похожие вопросы

Ошибка выражения Alpine: невозможно получить доступ к свойству «содержит», $refs.panel не определена
У меня есть блейд-страница laravel с @foreach, как мне перенести блейд-код на страницу .vue?
Изменение правильного или неправильного значения поля в расширенном плагине настраиваемых полей и обновление всех сообщений
Curl: невозможно подключиться к прокси-серверу SOCKS5 на сервере
Как заставить переменную PHP «прилипать» к нескольким вызовам скрипта?
Вызов неопределенного метода App\Models\User::attachRole()
Структура постоянной ссылки продукта WooCommerce с использованием add_rewrite_rule() с родительской/дочерней/страницей
Разделить массив на сбалансированные фрагменты заданного минимального размера с меньшими фрагментами спереди и большими сзади
Неустранимая ошибка: невозможно повторно объявить spl_autoload_register() с помощью простого блога PHP
Mysqli_stmt::execute(): преждевременный EOF в метаданных поля результата