Я думаю, что описание параметра pageToken
на самом деле довольно запутанно в документации ( этот ответ был написан до обновления документации ).
Токен продолжения, который используется для просмотра больших наборов результатов. Чтобы получить следующую страницу результатов, установите для этого параметра значение nextPageToken
из предыдущего ответа.
Это объединяет два понятия: продолжение и пейджинг. На самом деле в реализации Users.sessions
.
нет никакой подкачки.
Сессии индексируются по метке времени их изменения. Существует два (или три, в зависимости от того, как вы считаете) способа взаимодействия с API:
- Передать время начала и / или окончания. Опущенное время начала и окончания принимается за начало и конец времени соответственно. В этом случае вы вернетесь ко всем сеансам, приходящимся на эти промежутки времени.
- Не передавать ни время начала, ни время окончания. В этом случае вы будете получать все сеансы между прошлым и настоящим. Это время:
pageToken
, если предусмотрено
- В противном случае, это 7 дней назад (на самом деле это не указано в документации, но это поведение)
В любом из этих случаев вы получаете обратно nextPageToken
, что сразу после самого последнего сеанса в результатах. Таким образом, nextPageToken
действительно является токеном продолжения , потому что он говорит о том, что вам сообщили обо всех сеансах, измененных до сих пор: передайте этот токен обратно, чтобы сообщить обо всем, что было изменено между nextPageToken
и «текущее время» для получения обновлений.
Таким образом, если вы выдадите запрос, который выбирает все сеансы за последние 7 дней (без времени начала / окончания, без маркера страницы) и получите nextPageToken
, вы получите только что-то обратно в запросе, используя этот nextPageToken
если какие-либо сеансы были изменены между первым и вторым запросами.
Итак, если вы делаете эти запросы в быстрой последовательности, ожидается, что вы не увидите ничего во втором ответе.
С точки зрения действительности startTime
, который вы передали в своем комментарии , это ошибка. RFC3339 определяет, что доли секунды должны быть необязательными.
Я посмотрю, как исправить это; но между тем, просто убедитесь, что вы пропустили дробное количество секунд (даже если это всего лишь .0
, например, 2018-10-18T00:00:00.0+00:00
).