beforeSave()中的请求参数不';不包含从android应用程序发送的任何存储值

beforeSave()中的请求参数不';不包含从android应用程序发送的任何存储值,android,parse-platform,Android,Parse Platform,这是我的android代码: ParseObject parseObject = new ParseObject("likes"); ParseObject parseuser=ParseObject.createWithoutData(ParseUser.class,post.getPosAuthorObjectId()); ParseObject parsepost=ParseObject.createWithoutData("posts",p

这是我的android代码:

ParseObject parseObject = new ParseObject("likes");
            ParseObject parseuser=ParseObject.createWithoutData(ParseUser.class,post.getPosAuthorObjectId());
            ParseObject parsepost=ParseObject.createWithoutData("posts",post.getObjectId());
            parsepost.put("postAuthor",parseuser);
            parseObject.put("ownerId", ParseObject.createWithoutData(ParseUser.class, ParseUser.getCurrentUser().getObjectId()));
            parseObject.put("postId",parsepost);
            parseObject.saveInBackground
我试图将一些关于用户id的数据与post对象一起发送,以便将post对象保存在“likes”类中,并使用masterkey更改post所有者的属性,而无需在单独的查询中获取post所有者的id,因为它已经存储在我的android代码中。在我的实验beforeSave()中:


基本上,我试图检索保存在postobject中并发送到请求参数的用户id。但我的实验输出总是空的。

您正在扩展user类的Parse.Object,并使用相同的变量名设置新用户。您可以完全去掉第一个var用户行,因为new Parse.user()在默认情况下工作,不需要任何扩展


无论如何,只需尝试
console.log(request.object)
查看您实际传递的内容。

谢谢。我照您说的做了,发现云代码中的请求参数没有接收到放入parsepost对象的parseuser。那么,自createwithoutdata()以来,有没有其他方法来实现android代码中尝试的任务方法不允许我在创建后将属性放入其中。请帮助。谢谢。
Parse.Cloud.beforeSave("likes",function(request,response){
var posts = Parse.Object.extend("posts");
var post=new posts();
var post=request.object.get("postId");
var user=Parse.Object.extend(Parse.User);
var user=new Parse.User();
var  id =post.object.get("postAuthor").id;
if(id!=null){
    response.success();
}
else{
    response.error("The id is null");
}
});