#google-classroom
Вопрос:
В моей учетной записи заархивировано около 520 классных комнат, если я попытаюсь выбрать их с помощью
вар Курслист = Класс.Курсы.список({«Курсы»:[«АРХИВ»]}).курсы;
Я получаю только 300 из них. Это нормально? Как я могу выбрать их все? На самом деле я пишу сценарий для удаления самых старых, но если я не смогу их восстановить, я не смогу их удалить.
Комментарии:
1. Краткое решение должно заключаться в выборе состояний: АРХИВИРОВАНО и Время создания: указанный год и месяц (не день, потому что может быть любым). Но я не могу понять синтаксис, чтобы получить это.
Ответ №1:
Я понимаю, что у вас так много курсов, что Courses.list()
ответ разбит на отдельные страницы. В этом случае вы можете очень легко перемещаться по ним с помощью токенов. Прежде всего, убедитесь, что вы указали pageSize
это в своем запросе. Это установило бы желаемое количество ответов на страницу. Пожалуйста, имейте в виду, что сервер может возвращать меньше указанного количества результатов, как указано в документах. В случае, если ваш ответ был разделен на страницы, ответ будет включать nextPageToken
поле. Затем, чтобы получить остальные курсы, вы должны повторить свой запрос, включая его nextPageToken
в pageToken
собственность. Пожалуйста, не стесняйтесь задавать мне любые сомнения по поводу этого подхода.
Комментарии:
1. Привет, Жак, спасибо за твой ответ. Я искал документы о размере страницы, но ничего не могу найти. Можете ли вы помочь мне понять правильный синтаксис?
Ответ №2:
Большое спасибо, Жак, я нашел решение:
var parametri = {"courseStates": "ARCHIVED"};
var page = Classroom.Courses.list(parametri);
var listaClassi = page.courses;
if (page.nextPageToken !== '') {
parametri.pageToken = page.nextPageToken;
page = Classroom.Courses.list(parametri);
listaClassi = listaClassi.concat(page.courses);
}
В любом случае, мне не нужно было менять размер страницы, и я не нашел никакого руководства по этому поводу.