带参数的多张图片一起上传

使用AFN3.0上传带有参数的多张图片:

首先有一个图片数组imageArr

//遍历这个图片数组
for (UIImage *image in imageArray) {

//将每张图片转化成data数据                           
NSData *imageData = UIImageJPEGRepresentation(tempImg, 0.3);

//将转化后的data数据加入到一个可变数组中
[imageSourceArr addObject:imageData];
}

//请求格式为二进制格式
AFHTTPRequestSerializer *serializer = [AFHTTPRequestSerializer serializer];
//网址字符串
NSString *urlStr= @"";
//上传所带的参数
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
//创建请求对象
NSMutableURLRequest *request = [serializer multipartFormRequestWithMethod:@"POST" URLString:urlStr parameters:parameter constructingBodyWithBlock:^(id formData) {
//循环遍历imageSourceArr可变数组          
[imageSourceArr enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {

     [formData appendPartWithFileData:obj name:@"imgs" fileName:@"imgs.jpg" mimeType:@"image/jpg"];
        }];

} error:nil];
//创建网络请求的管理类对象
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
//创建上传任务对象    
NSURLSessionUploadTask *uploadTask = [manager uploadTaskWithStreamedRequest:request progress:^(NSProgress *uploadProgress) {

} completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) {

}];

[uploadTask resume];

你可能感兴趣的:(网络请求)