Как получить общее количество элементов в одном запросе API G Suite?

Я разрабатываю простое приложение для использования данных из некоторых API G Suite (Admin SDK, Диск, Gmail и т. д.).

Конечные точки API G Suite, поддерживающие метод list (для коллекций), предоставляют запросы с ответом следующего типа (содержание может различаться в зависимости от API):

{
  "kind": "admin#directory#users",
  "etag": "\"WczyXiapC9UmAQ6oKabcde6P59w-7argQ83zwDwKoUE/zsH-hyZTP1lFsB3-wabK4_8VXMk\"",
  "users": [
    {
      "kind": "admin#directory#user",
      "id": "137674315191655104007",
      "etag": "\"WczyXiapC9..."
      ...
    },
        ... 
    # N elements of type 'user', where N <= maxResults,
    # being <maxResults>, the maximum number of elements in the response per query.
    # <maxResults> has a system default value.
    ]
}

Чтобы получить общее количество доступных элементов для использования в этом API, я могу столкнуться со следующими случаями:

  1. Один единственный запрос, если общее количество доступных элементов меньше или равно maxResults.

  2. Более одного, если общее количество доступных элементов больше maxResults.

Когда происходит номер два, API G Suite возвращает токен разбивки на страницы, который я буду использовать в последовательных запросах для получения дополнительных страниц с элементами до maxResults.

Как только я израсходую все элементы, я смогу получить общее число.

Мой вопрос:

Возможно ли получить общее количество элементов (только целочисленное значение) в запросе с помощью одного вызова API и, таким образом, избежать разбиения на страницы?

Спасибо за ответ.


person Atenea_v10    schedule 04.05.2020    source источник


Ответы (1)


Возможно ли получить общее количество элементов (только целочисленное значение) в запросе с помощью одного вызова API и, таким образом, избежать разбиения на страницы?

если метод содержит параметр с именем MaxResults, это связано с тем, что он имеет максимальное количество строк, которые может вернуть вызов.

Если вы посмотрите документацию для метода Google drive api file.list

Максимальное количество файлов, возвращаемых на страницу. Частичные или пустые страницы результатов возможны даже до достижения конца списка файлов. Допустимые значения: от 1 до 1000 включительно. (По умолчанию: 100)

Это означает, что он может вернуть вам максимум 1000 файлов, после чего вам нужно будет разбить их на страницы. В API нет способа обойти это ограничение.

person DaImTo    schedule 04.05.2020