情境:
在我的Parse后端,我有两个类:
A和B
A和B之间没有关系。
我创建了一个名为getAandB()
的云代码函数,它返回的JSON有点像这样:
{ "anObjectOfClassA" : {
id = 123456,
text = "Hello"
},
"anObjectOfClassB" : {
id = 987654,
value = 30.0
}
}
问题:
所以在客户端上,我使用PFCloud.callFunction("getAandB")
,当我收到这个JSON响应时,有没有办法神奇地"转换"这分为两个PFObject,一个PFObject(className: "A")
和一个PFObject(className: "B")
?
说明:
我知道如果我只返回这样的JSON:
{ "anObjectOfClassA" : {
id = 123456,
text = "Hello"
}
}
我可以"反序列化"响应并直接返回PFObject(className: "A")
。但是我不能在我的例子中这样做,因为JSON包含两种不同类型的对象。
答案 0 :(得分:0)
我不知道这是否有用我还没有尝试过但是......如果你收到一个你希望转换的随机JSON对象,你可以按键拆分对象并创建您希望成为解析对象的对象数组1)。然后,您可以再次拆分数组中的对象,并为您的解析对象获取一组属性。使用javascript API,您可以为每个API创建并保存JSON对象。我很困惑为什么你会使用这种方法,而不仅仅是查询信息。但是下面的一些Sudo-Code .....
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();
}