簡體   English   中英

使用 App Script 和 Admin SDK 設置 G Suite 用戶屬性

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM