这是关于G套件users.The以下工作在谷歌管理目录使用谷歌管理软件开发工具包。它检索用户的电子邮件地址和全名。
var myemail = Session.getActiveUser().getEmail();
var mycontact = AdminDirectory.Users.get(myemail);
var myname = mycontact.name.fullName;在用户配置文件中有一个名为"Department“的自定义属性。以下代码不会检索任何内容。它抛出null
var mydept = mycontact.Department;如何在G套件中从用户配置文件中检索自定义属性?
发布于 2018-02-22 04:01:22
根据Directory Api - Users: get,您需要将projection设置为"custom"。
projection -要为此用户提取的字段子集。
可接受的值包括:
basic:不包含任何用户自定义字段。(默认)
" custom ":包含customFieldMask中请求的模式中的自定义字段。
"full":包含与该用户关联的所有字段。
然后,您应该为自定义数据定义一个Schema
customFieldMask
(字符串)以逗号分隔的架构名称列表。从这些模式中获取所有字段。仅当为projection=custom时才应设置此属性。
类似于:这样的
var mycontact = AdminDirectory.Users.get({
"userKey": myemail,
"projection": "full",
"customFieldMask": "Define Schema Here"
});然后,您可以使用Logger.log(mycontact);查看如何访问返回的自定义字段
发布于 2018-03-05 23:50:22
对于自定义模式,您可以只使用full投影来获取所有自定义模式字段。
有关标准部门字段,请参阅user.organizations[0].department
https://developers.google.com/admin-sdk/directory/v1/reference/users
发布于 2018-11-06 22:47:38
如果你得到一个错误:
未找到
资源: userKey
试试这个:
mycontact = AdminDirectory.Users.get(
myemail,{
projection: 'full'
});https://stackoverflow.com/questions/48912906
复制相似问题