Objective c 同时使用Parse saveAllInBackground和beforeSave函数

Objective c 同时使用Parse saveAllInBackground和beforeSave函数,objective-c,parse-platform,cloud,Objective C,Parse Platform,Cloud,我正在开发一个应用程序,它使用Parse.com提供的云服务 在应用程序中,我们需要一次保存多个记录,并使用以下代码保存产品阵列 [PFObject saveAllInBackground:productArray block:^(BOOL succeeded, NSError *error) { if(succeeded){ NSLog(@"Saved"); } else { NSLog(@"Error: %@", error);

我正在开发一个应用程序,它使用Parse.com提供的云服务

在应用程序中,我们需要一次保存多个记录,并使用以下代码保存产品阵列

[PFObject saveAllInBackground:productArray block:^(BOOL succeeded, NSError *error) {
    if(succeeded){
        NSLog(@"Saved");
    }
    else
    {
        NSLog(@"Error: %@", error);
    }
}];
我们还需要避免重复相同的记录,我们使用以下云函数来避免它

  var Product = Parse.Object.extend("Product");
  Parse.Cloud.beforeSave("Product", function(request, response) {
  if (!request.object.get("productId")) {
      response.error('Products should have a Product Id');
  } else {
    var query = new Parse.Query(Product);
    query.equalTo("productId", request.object.get("productId"));
    query.first({
    success: function(object) {
      if (object) {
        response.error("A Product with this productId already exists.");
      } else {
        response.success();
      }
    },
    error: function(error) {
      response.error("Could not validate uniqueness for this Product object.");
    }
  });
  }
  });
我们的问题是,当saveAllInBackground方法处理1000个项目时,如果存在两个重复的值,则整个过程都会受到影响

例如,我们一次发送1000个项目,这1000个项目中有5个重复的项目,我们希望剩余的995个项目保存为新记录。然而,目前情况并非如此。似乎所有保存过程都受到为单个记录发送的错误消息的影响

任何反馈都将不胜感激