[英]Setting G Suite user properties with App Script and the Admin SDK
我正在尝试从 App Maker 中的 App Script 设置用户的 OU。 ( user
是一个带有电子邮件地址的变量)
function getUser(user) {
var x = AdminDirectory.Users.update(
{
orgUnitPath: "/",
userKey: user,
});
console.log("function ran");
}
此代码错误:
Exception: Invalid number of arguments provided. Expected 2-3 only at getUser (ServerScripts:107)
Invalid number of arguments provided. Expected 2-3 only
at getUser (ServerScripts:107)
at getUser (ClientHandoff:21:21)
at TestMoveOU.Panel1.Button1.onClick:1:1
我在这里做错了什么? 查看docs ,您只需要提供您正在更改的属性。
Apps 脚本文档说明如下:
有关此服务的详细信息,请参阅 Admin SDK Directory API 的参考文档。 与 Apps Script 中的所有高级服务一样,Admin SDK Directory 服务使用与公共 API 相同的对象、方法和参数。
因此,我们需要查阅文档以了解如何实现这一点。
该方法至少需要两个参数:这意味着第一个参数是用户对象资源,第二个参数是用户的电子邮件地址: AdminDirectory.Users.update(resource, userKey)
。 所以你需要这样做:
function getUser(user) {
var userResource = {
orgUnitPath: "/"
};
var updated = AdminDirectory.Users.update(userResource, user);
console.log(updated.primaryEmail);
}
那么,既然已经在userResource
对象中指定了用户电子邮件,为什么还需要在方法中指定它呢? 好吧,如果您想更改电子邮件地址,则userResource
对象中的电子邮件地址将是新值。
PS 也许您可能想将函数的名称更改为更匹配的名称; updateUser()
也许? 我希望这有帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.