Хотите AdminDirectory.Users.list более 500 записей - PullRequest
0 голосов
/ 13 января 2020

В приведенном ниже коде я хочу, чтобы данные пользователя отображались более 500 записей. это возможно. Спасибо за любую помощь.

page = AdminDirectory.Users.list({
                domain : 'domain name',
                orderBy : 'givenName',
                maxResults: 500,
                pageToken : pageToken
            });

1 Ответ

0 голосов
/ 13 января 2020

Конечная точка не возвращает более 500 результатов как максимум за вызов. Вместо этого вы должны реализовать разбиение на страницы в своем коде. Чтобы получить каждого отдельного пользователя в вашем домене, вы можете использовать следующий код:

function getAllUsers() {
  var pageToken;
  var result = [];

  do {
    var page = AdminDirectory.Users.list({
                 domain : 'domain name',
                 orderBy : 'givenName',
                 maxResults: 500,
                 pageToken : pageToken
               });
    result = result.concat(page.users);
    pageToken = page.nextPageToken;
  } while (pageToken);

  return result;
}

Идея состоит в том, что каждый запрос не завершен (возвращает пользователей, но есть еще пользователей, которых нужно извлечь) pageToken возвращается. Для следующего запроса вы можете использовать токен для извлечения пользователей, которые еще не были извлечены, и так далее, пока возвращаемое значение pageToken не станет null (больше пользователей не останется в домене).

...