2015-08-24 84 views
0

我试图创建一个云码功能,这将返回多个值返回多个值。现在我正在做的是Parse.com - 从云代码功能

response.success({val1 : scores1, val2: scores2}); 

并根据云代码记录一切顺利。但是当我在Swift代码中处理函数时,我不知道应该使用哪种对象。

PFCloud.callFunctionInBackground("myFunction", withParameters: ["value" : 1) { (object:AnyObject?, error:NSError?) -> Void in 
     //what I should cast object for 
    } 

我也有一个想法是我的脑海里,它可以是一种错误的做法为我基本上试图找到斯威夫特equivavelnt为JavaScript对象。如果是这样,有没有其他方式从云代码函数返回多个值?

我在控制台日志时,我的println对象以下。

Optional({ 
poetry = 1; 
rap = 9; 
}) 
+0

雨燕等同于JSON是字典...请执行的NSLog(“\(对象)”),并张贴在这里输出......比我能说你如何投这个对象 –

+0

更新了问题所需的信息 –

+0

好吧好吧,谢谢,我知道了,我需要将其转换为'字典'。我会接受这个答案,只是发布它。 –

回答

0

好吧,那么你的对象是一个字典可选...您可以使用此代码:

if let responseJSON: [String: Int] = object as? [String: Int] { 
     let poetryValue: Int = object["poetry"] as Int 
     let rapValue: Int = object["rap"] as Int 
} 
0

只是返回具有属性为每个返回值或值的数组或字典一个对象(或任何你的船浮筒;))和反序列化在客户端上。它包含了所有你需要方便地在按摩的数据对象/列表/词典/这样,你只有一个返回值,无论...

PFCloud.callFunctionInBackground("myFunction", withParameters: ["value" : 1) { (object:AnyObject?, error:NSError?) -> Void in 
    if let values = object as! [String:Int] { 
    // Do something 
    } 
} 

应该工作

+0

我已经在这一行doiing所以'response.success({VAL1:scores1,VAL2:scores2} );'我不知道如何去实现它。 –