gpt4 book ai didi

java - 使用 Google Directory Admin API 查找 UserKey 时出错

转载 作者:行者123 更新时间:2023-11-29 05:12:41 28 4
gpt4 key购买 nike

我有一些代码可以检索、删除、更新和创建谷歌用户。我可以毫无问题地创建用户:

public void createUser(String id, String firstName, String lastName, String email, String password){

User user = new User();

try{


UserName name = new UserName();
name.setFamilyName(lastName);
name.setGivenName(firstName);
user.setName(name);
user.setPassword(password);
user.setPrimaryEmail(email);
user.setId(id);

System.out.println(service.users().insert(user).execute());
}
catch(Exception e){
System.out.println("Error creating user: " + e);
}

我还可以通过以下方式检索用户 key :

System.out.println("UserKey: " + service.users().get(id).getUserKey());

但是当我尝试更新或删除具有该 ID 的用户时,出现以下错误:

 com.google.api.client.googleapis.json.GoogleJsonResponseException: 404 Not Found
{
"code" : 404,
"errors" : [ {
"domain" : "global",
"message" : "Resource Not Found: userKey",
"reason" : "notFound"
} ],
"message" : "Resource Not Found: userKey"
}

我的删除方法是这样的:

public void deleteUser(String id){
try{
System.out.println(service.users().delete(id).execute());
}
catch(Exception e){
System.out.println("Error deleting user: " + e);
}
}

如果我将电子邮件地址 (id@domain.edu) 传递给删除或更新方法,它会找到帐户并正常工作,但我需要能够仅传递我在插入方法中创建帐户时使用的 ID .有什么想法吗?

最佳答案

调用 Directory API 时,您必须始终指定用户的完整电子邮件地址或用户的 Google 唯一 ID。仅提供用户名的本地部分是不够的,因为这不允许 Google 确定用户与哪个 Google Apps 域关联。

关于java - 使用 Google Directory Admin API 查找 UserKey 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27822583/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com