gpt4 book ai didi

java - 将 key 发送到 App Engine 端点

转载 作者:行者123 更新时间:2023-11-29 09:06:03 24 4
gpt4 key购买 nike

我正在尝试将包含 key 的对象发送到 Google App Engine 端点。但是对象不能被反序列化。这是我得到的错误:

java.io.IOException:     com.google.appengine.repackaged.org.codehaus.jackson.map.JsonMappingException: 
(was java.lang.NullPointerException)
(through reference chain:
Form["identity"]->FormsIdentity["user"]->User["key"]->com.google.appengine.api.datastore.Key["appId"])

这是我发送的对象:

    "identity":{
"user":
{
"key" : {
"kind" : "User",
"appId" : "no_app_id",
"id" : "1",
"complete" : true,
"namespace" : ""
},
"googleID" : "8493582",
"emailAddress" : "xxxxx@gmail.com",
"credential" : "xxxx@gmail.com"
},
"deviceID":"4234o34i523534"
}

但我只得到前端的错误,因为端点内的代码被执行了。

最佳答案

当key被序列化为json时,会尝试调用Key.class中的getAppId()

  public String getAppId() {
return appIdNamespace.getAppId();
}

如您所见,此 getter 尝试访问 appIdnamespace,在您的情况下它可能为 null。 appIdnamespace 不能显式设置,但它是在您使用 KeyFactory 创建 key 时生成的,或者在数据存储区持久化该对象之后生成的。

由于您没有发布返回此身份对象的方法的代码,我不确定为什么您的用户 key 没有设置 appIdnamespace,但我的猜测是您没有返回一个对象已被保留或 key 未正确创建。

关于java - 将 key 发送到 App Engine 端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15006859/

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