Android 是否可以将JSON中的对象转换为Parse.com对象(PFObject)
场景: 在我的解析后端中,我有两个类: A和B A和B之间没有关系 我创建了一个名为Android 是否可以将JSON中的对象转换为Parse.com对象(PFObject),android,ios,parse-platform,Android,Ios,Parse Platform,场景: 在我的解析后端中,我有两个类: A和B A和B之间没有关系 我创建了一个名为getAandB()的云代码函数,该函数返回类似以下内容的JSON: { "anObjectOfClassA" : { id = 123456, text = "Hello" }, "anObjectOfClassB" : { id = 987654, value = 30.0 } } { "
getAandB()
的云代码函数,该函数返回类似以下内容的JSON:
{ "anObjectOfClassA" : {
id = 123456,
text = "Hello"
},
"anObjectOfClassB" : {
id = 987654,
value = 30.0
}
}
{ "anObjectOfClassA" : {
id = 123456,
text = "Hello"
}
}
问题:
因此,在客户端上,我使用了PFCloud.callFunction(“getAandB”)
,当我收到这个JSON响应时,有没有办法神奇地“转换”成两个PFObject,一个PFObject(className:“a”)
,一个PFObject(className:“B”)
备注:
我知道如果我只返回这样的JSON:
{ "anObjectOfClassA" : {
id = 123456,
text = "Hello"
},
"anObjectOfClassB" : {
id = 987654,
value = 30.0
}
}
{ "anObjectOfClassA" : {
id = 123456,
text = "Hello"
}
}
我可以“反序列化”响应并直接返回一个
PFObject(className:“a”)
。但在我的示例中,我无法做到这一点,因为JSON包含两种不同类型的对象。我不知道这是否可行,我没有尝试过,但是……如果您收到一个随机的JSON对象,您希望转换,您可以按键拆分对象,并创建一个对象数组,您希望成为解析对象1)。然后,您可以再次拆分数组中的if对象,并为您解析对象获取一组属性。使用JavaScriptAPI,您可以为它们中的每一个创建和保存JSON对象。我不明白为什么你会使用这种方法,而不仅仅是查询信息。但是下面的一些Sudo代码
var listOfObjects = [];
for(var k in obj) listOfObjects.push(k);
for(var i =0; i < listOfObjects.length; i++){
var parseObject = Parse.Object.extend(listOfObjects[i]);
for(var k in listOfObjects[i]){
parseObject.set(k, listOfObjects[i][k]);
}
parseObject.save();
}
var listOfObjects=[];
对于(obj中的变量k)listOfObjects.push(k);
for(var i=0;i
1) 我不知道这是否有效,我还没有尝试过,但是……如果您收到一个随机的JSON对象,您希望转换,您可以按键分割对象,并创建一个对象数组,您希望成为解析对象1)。然后,您可以再次拆分数组中的if对象,并为您解析对象获取一组属性。使用JavaScriptAPI,您可以为它们中的每一个创建和保存JSON对象。我不明白为什么你会使用这种方法,而不仅仅是查询信息。但是下面的一些Sudo代码
var listOfObjects = [];
for(var k in obj) listOfObjects.push(k);
for(var i =0; i < listOfObjects.length; i++){
var parseObject = Parse.Object.extend(listOfObjects[i]);
for(var k in listOfObjects[i]){
parseObject.set(k, listOfObjects[i][k]);
}
parseObject.save();
}
var listOfObjects=[];
对于(obj中的变量k)listOfObjects.push(k);
for(var i=0;i
1) 你能神奇地展开“变换”吗;医生:你不需要。如果您使用Parse的
PFCloud.callFunctionInBackground
从客户端调用云函数(在我的例子中是iOS),并且如果您直接从云代码返回对象(通过response.success()从查询返回一个或多个对象),那么客户端Parse方法将自动为您执行此操作。我努力序列化JSON,却发现客户端解析函数已经完成了这项工作。@chrisco,即使返回的对象属于不同的类?你能神奇地扩展“transform”?TL;医生:你不需要。如果您使用Parse的PFCloud.callFunctionInBackground
从客户端调用云函数(在我的例子中是iOS),并且如果您直接从云代码返回对象(通过response.success()从查询返回一个或多个对象),那么客户端Parse方法将自动为您执行此操作。我努力序列化JSON,却发现客户端解析函数已经完成了这项工作。@chrisco,即使返回的对象属于不同的类?