在Google Directory API中,如何使用javascript添加用户?

问题描述 投票:2回答:2

我有Google Directory API Javascript quickstart正常工作。这部分代码列出了目录中的前10个用户:

      gapi.client.directory.users.list({
        'customer': 'my_customer',
        'maxResults': 10,
        'orderBy': 'email'
      }).then(function(response) {
        var users = response.result.users;
        appendPre('Users:');

        appendPre('test')

        if (users && users.length > 0) {
          for (i = 0; i < users.length; i++) {
            var user = users[i];
            appendPre('-' + user.primaryEmail + ' (' + user.name.fullName + ')');
          }
        } else {
          appendPre('No users found.');
        }
      });

我想将用户添加到目录中。看起来这是使用users: insert完成的。因此,在从范围中删除'readonly'部分后,我将以上代码片段替换为:

var user = {
        "password": "Testpass123",
        "primaryEmail": "[email protected]",
        "name": {
          "givenName": "albert",
          "familyName": "smith"
        }
      };
      
gapi.client.directory.users.insert(user);

显然这不起作用,但我不确定我错过了什么。在用户上有一个“试用此API”工具:插入参考页面,当我在“请求正文”字段中插入“用户”的属性时,它会添加用户。

我不知道如何建立一个请求体,我无法在文档中找到解决方案。 users:list方法不需要请求体。我试过这样的东西,但也没用:

gapi.client.request({
         'path': 'https://www.googleapis.com/admin/directory/v1/users',
         'method': 'POST',
         'body': user
       });

希望有人能给我至少一个关于做什么的概念。我很擅长这个。

javascript http-post google-admin-sdk google-directory-api
2个回答
0
投票

尝试从Apps Script's Admin SDK Add user派生的这个虚拟数据,并替换为您正确的详细信息:

样品申请机构:

var user = {
    primaryEmail: '[email protected]',
    name: {
      givenName: 'Elizabeth',
      familyName: 'Smith'
    },
    // Generate a random password string.
    password: Math.random().toString(36)
  };

0
投票

尝试将用户对象包装在资源对象中,如:

var user = {
  resource: {
   "password": "Testpass123",
   "primaryEmail": "[email protected]",
   "name": {
      "givenName": "albert",
      "familyName": "smith"
    }
  }
}

我找不到这方面的参考,所以也许别人可以发帖但它对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.