我有一个使用parse.com作为后端的随机消息应用程序。我保存的信息在一个名为“消息”类的按键:使用云代码操纵parse.com类
- “消息体”(这是该消息的内容)和
- “senderId”(这是当然的发件人ID)
将此信息保存到我的Messages类后,我使用云代码查询3个随机用户并将此消息发送给他们。
我的问题是哪个是最好的方法来做到这一点,因为我预见我目前的方法中的错误。我使用的当前方法是在用户按下发送之后,将消息保存到Parse.com,然后我调用“发送给3个随机用户”云功能,但是如果我的消息未成功保存到解析后端云功能是否实施?
-(IBAction)send{
PFObject *message = [PFObject objectWithClassName:@"Message"];
[message setObject:self.messageContent forKey:@"messageBody"];
[message setObject:[[PFUser currentUser] objectId] forKey:@"senderId"];
[message saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error){
if(error){
//show alert with error
}
else{
//everything was successful
}
}];
[PFCloud callFunctionInBackground:@"sendToThreeRandomUsers" withParameters:@{}
block:^(NSString *result, NSError *error) {
if (!error) {
//cloud function was a success!
}
}];
}
基本上我想知道是否有一种方式,每当有在信息类的新对象,我可以说从我的解析后台发送这3个随机用户,而不是从我的用户设备调用它?
或者我应该完全跳过将它保存到我的解析后端,并直接发送到我的云代码作为云功能的参数?然后将其保存到我的后端。如果messageBody非常大虽然呢?
所以这个问题真的不是代码,而是构造它的方式。
愿望你为什么不写你的消息类afterSave方法,我可以用赫克托·拉莫斯作为标记为这个问题
这完全是要走的路。 – 2014-10-02 12:10:34
谢谢!但如果我用这个,我应该使用云功能的邮件保存到解析数据浏览器(消息作为参数),还是应该将其保存在背景中,像上面代码中所示的块? – ian 2014-10-02 16:18:15
首先,您可以通过云和您的代码块将数据保存到解析数据浏览器。 o这意味着您的块可以在保存操作后将数据保存到Message类中,您的afterSave云代码将被触发。 – kingspeech 2014-10-02 22:31:35