我们正在尝试获取ChromeOS端点。我们使用页面令牌来获取下一页。当令牌过期时,我们会更新令牌并尝试恢复轮询。但是我们收到错误消息,指出页面令牌无效。
如果我们不使用页面令牌,则会返回第0页。
所以问题是我们如何使用更新的页面令牌恢复轮询?
srv, err := admin.New(client)
if err != nil {
log.Fatalf("Unable to retrieve directory Client %v", err)
}
pageID := 1
pageToken := ""
sleep := false
for {
log.Printf("Fetch page: %d", pageID)
srv := srv.Chromeosdevices.List("my_customer").MaxResults(1).Projection("FULL")
if pageToken != "" {
srv = srv.PageToken(pageToken)
}
r, err := srv.Do()
if err != nil {
log.Fatalf("Unable to retrieve devices: %v", err)
}
if len(r.Chromeosdevices) == 0 {
log.Printf("No devices found")
break
}
for _, u := range r.Chromeosdevices {
log.Printf("Page(%d) MAc: %s Model: %s", pageID, u.MacAddress, u.Model)
}
time.Sleep(3 * time.Second)
pageToken = r.NextPageToken
if pageToken == "" {
log.Printf("Completed with all pages")
break
}
pageID += 1
if !sleep {
log.Printf("Sleeping for 70 minutes")
time.Sleep(4200 * time.Second)
sleep = true
log.Printf("Done Sleeping for 70 minutes")
}