从iOS传递图像数据到云功能

时间:2015-12-09 13:50:05

标签: javascript ios objective-c parse-platform

现在我使用图像从客户端应用程序保存对象。这是代码:

NSData *imageData = UIImagePNGRepresentation(_photoImageView.image);
PFFile *imageFile = [PFFile fileWithName:@"image.png" data:imageData];

PFObject *newItem = [PFObject objectWithClassName:@"Item"];

[newItem setObject:imageFile forKey:@"photo"];
[newItem saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
    if (succeeded) {
        //...

    } else {

        //...  
    }
}];

我将其转移到Cloud代码中的一个函数中,以简化跨平台的代码。我如何将图像传输到函数?

NSDictionary *dictionary = [[NSDictionary alloc]initWithObjectsAndKeys:
                        //...
                        THIS, @"photo",
                        nil];

[PFCloud callFunctionInBackground:@"saveNewItem"
               withParameters:@{@"data": dictionary}
                        block:^(NSString *result, NSError *error) {
                            if (!error) {

                            } else {

                                NSLog(@"Error");

                            }
                        }];

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以传递照片的网址PFFile,然后在云端代码中使用此网址来处理数据。 所以你的数据字典可能如下所示:

NSDictionary *dictionary = [[NSDictionary alloc]initWithObjectsAndKeys:
                    //...
                    imageFile.url, @"photoURL",
                    nil];