如何获得用户的显示名称?

时间:2019-07-17 07:18:41

标签: google-admin-sdk

我正在使用G Suite管理员SDK users/list功能来获取我的域中的用户列表。除了返回的信息不包含用户的显示名称之外,此方法均有效。当我说“显示名称”时,是指Gmail或日历中显示的名称,有时与返回的全名不同。

如何获取显示名称?

目前尚不清楚这与用户的个人资料和/或Google+域个人资料之间的关系。还有其他与这些API相关的API,但似乎都没有返回我想要的东西。

我实际上是在Google Apps脚本中执行此操作的,相关代码为:

        var allUsers = [];
        var pageToken;
        var page;
        do {
            page = AdminDirectory.Users.list({
                domain: domain,
                orderBy: 'givenName',
                maxResults: 100,
                pageToken: pageToken,
                viewType: 'domain_public'
            });
            var users = page.users || [];
            for (var i = 0; i < users.length; i++) {
                allUsers.push(users[i]);
            }
            pageToken = page.nextPageToken;
        } while (pageToken);
        return allUsers;

1 个答案:

答案 0 :(得分:0)

对于您的代码,您可以尝试使用page.users[i].name.givenName。将users[i]替换为allUsers.push(page.users[i].name.givenName)。运行您的代码,您将获得如何从用户那里检索特定信息的想法,添加“。”后将看到代码完成。到pages.users[i]

  var allUsers = [];
        var pageToken;
        var page;
        do {
            page = AdminDirectory.Users.list({
                domain: domain,
                orderBy: 'givenName',
                maxResults: 100,
                pageToken: pageToken,
                viewType: 'domain_public'
            });
            var users = page.users || [];
            for (var i = 0; i < users.length; i++) {
                allUsers.push(page.users[i].name.givenName);
            }
            pageToken = page.nextPageToken;
        } while (pageToken);
        return (console.log(allUsers));