如何在Javascript中模拟来自Google API的管理员用户?

时间:2017-10-24 21:00:56

标签: javascript google-api google-admin-sdk google-javascript-api

我正在尝试使用以下参数发出gapi.client.directory.users.list请求:

'customer': 'my_customer',
'maxResults': 100,
'orderBy': 'email'

当我的帐户是域管理员时获得成功结果。当我使用非管理员帐户执行相同的请求时,会返回403结果。

我转到https://admin.google.com/AdminHome?chromeless=1#OGX:ManageOauthClients并将 _______。apps.googleusercontent.com 添加为客户端,将https://www.googleapis.com/auth/admin.directory.user.readonly添加为范围。即使这样,我得到了403结果。

我看到一些'模仿' Java和Python中的函数......但是在浏览器上下文中没有Javascript,而不是NodeJS。

有人可以帮助我允许请求在我的域名的普通用户的管理目录api中列出用户吗?

1 个答案:

答案 0 :(得分:0)

经过一些浏览后,参数 viewType 必需,以允许非管理员用户获取目录数据。

gapi.client.directory.users.list({
    'viewType': 'domain_public',
    'customer': 'my_customer',
    'maxResults': 100,
    'orderBy': 'email'
}

我在@ jay-lee回答后的文档https://developers.google.com/admin-sdk/directory/v1/reference/users/list#domain_public中找到了它:Non-admin read-only access to Google Admin SDK