首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在中获取500多个用户的列表?

如何在中获取500多个用户的列表?
EN

Stack Overflow用户
提问于 2014-12-13 06:45:34
回答 2查看 2.8K关注 0票数 0

我编写了一个代码,它使用从服务器获取用户帐户信息。它专门获取用户列表,但默认情况下,系统按用户电子邮件地址的字母顺序返回一个由100个用户组成的列表。这可以通过将Directory.Users.List.setMaxResults设置为500 (这是上限)来更改。但如果我将其设置为500以上,则调用将返回一个异常。

所以我的问题是,如果服务器有超过500个用户,是否可以在一个列表中获取所有用户(超过500个)?如果没有,是否有任何解决办法来获取所有用户?

备注-我正在使用目录api的客户端库

EN

回答 2

Stack Overflow用户

发布于 2014-12-14 15:14:25

像这样使用pageToken:

代码语言:javascript
复制
List<User> usersList = new ArrayList<User>();
com.google.api.services.admin.directory.Directory.Users.List ul = dir.users().list().setCustomer(customerId).setMaxResults(Config.MAX_API_RESULTS);
do {
    Users curPage = ul.execute();
    usersList.addAll(curPage.getUsers());
    ul.setPageToken(curPage.getNextPageToken());
} while(ul.getPageToken() != null && ul.getPageToken().length() > 0);
票数 0
EN

Stack Overflow用户

发布于 2015-01-24 17:29:33

正如您所说的,最大页面大小为500,允许的值为1到500。因此,您必须得到一个异常。

为了获取用户的下一页,API为响应中的下一页发送一个pageToken。使用这个可以获得下一组500个用户,等等。实际API看起来如下- https://developers.google.com/admin-sdk/directory/v1/reference/users/list

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27456310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档