Вы должны создать границы для разных изображений, которые будут загружены. Позвольте мне объяснить шаг за шагом.
1. Преобразуйте свои изображения в NSData и добавьте их в словарь.
UIImage *image1 = [UIImage imageNamed:@"imageName"];
UIImage *image2 = [UIImage imageNamed:@"imageName"];
UIImage *image3 = [UIImage imageNamed:@"imageName"];
NSMutableDictionary *imageDataDictionary = [[NSMutableDictionary alloc] init];
[imageDataDictionary setObject:UIImagePNGRepresentation(image1) forKey:@"image"];
[imageDataDictionary setObject:UIImagePNGRepresentation(image2) forKey:@"image"];
[imageDataDictionary setObject:UIImagePNGRepresentation(image3) forKey:@"image"];
Когда вы создали вышеупомянутый словарь, самое время создать часть тела для запроса.
NSMUtableData *finalPostData = [[NSMutableData alloc] init];
NSString *boundary = @"0xKhTmLbOuNdArY";
NSString *endBoundary = [NSString stringWithFormat:@"\r\n--%@\r\n", boundary];
[finalPostData appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
for(NSString *key in imageDataDictionary)
{
imageData = [imageDataDictionary objectForKey:key];
[finalPostData appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[finalPostData appendData:[@"Content-Disposition: form-data; name=\"upload\"; filename=\"image.png\"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[finalPostData appendData:[@"Content-Type: image/png\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[finalPostData appendData:[NSData dataWithData:imageData]];
[finalPostData appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
}
Когда все изображения добавлены. Мы должны закончить с окончательной границей.
[finalPostData appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
Теперь наши данные готовы. Мы просто должны добавить это к телу запроса.