使用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<AFMultipartFormData> 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];