我正在尝试检索 Google 管理控制台中所有用户的列表,并列出了他们的电子邮件别名。我能够使用文档中的示例检索所有用户,但无法找到在 Javascript 中请求别名所需的参数。这是我现在拥有的。
async function listUsers() {
let response;
try {
const request = {
'customer': 'my_customer',
'orderBy': 'email',
\\ this is wrong
'aliases': [
{
object (UserAlias)
}
]
\\
};
response = await gapi.client.directory.users.list(request);
} catch (err) {
document.getElementById('content').innerText = err.message;
return;
}
我尝试使用此处列出的别名对象:https://developers.google.com/admin-sdk/directory/reference/rest/v1/users.aliases/list
你就快到了!要检索用户列表及其电子邮件别名,您应该在请求中使用值为 full 的投影参数。您发出的请求不需要别名字段。这是更新后的代码:
async function listUsers() {
let response;
try {
const request = {
'customer': 'my_customer',
'orderBy': 'email',
'projection': 'full', // Add this line
};
response = await gapi.client.directory.users.list(request);
} catch (err) {
document.getElementById('content').innerText = err.message;
return;
}
// Process the response and display the user email addresses and aliases
const users = response.result.users;
for (const user of users) {
console.log('User email: ' + user.primaryEmail);
if (user.aliases) {
console.log('Aliases: ' + user.aliases.join(', '));
} else {
console.log('No aliases');
}
}
}
此代码将投影参数设置为full,其中包括所有用户信息(包括别名)。发出请求后,将处理响应以显示用户的主要电子邮件地址和他们拥有的任何别名。
有关投影参数的更多信息,请参阅 Google Admin SDK Directory API 文档:https://developers.google.com/admin-sdk/directory/reference/rest/v1/users/list