iOS图片上传
来源:互联网 发布:淘宝保证金计划不符合 编辑:程序博客网 时间:2024/06/10 07:06
接下来在分享一下图片的上传到后台。使用AFN写的。
1 首先是单张图片的上传
- (void)upLoadPOSTImageWithImageData:(NSData *)imageData URLString:(NSString *)urlString parameters:(NSDictionary *)parameters imageKey:(NSString *)imageKey mimeType:(NSString *)mimeType{ AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; [manager POST:urlString parameters:parameters constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { [formData appendPartWithFileData:imageData name:imageKey fileName:@"Icon.jpeg" mimeType:mimeType]; } success:^(NSURLSessionDataTask *task, id responseObject) { NSLog(@"上传成功 %@", responseObject); } failure:^(NSURLSessionDataTask *task, NSError *error) { NSLog(@"上传失败 %@", [error description]); }];}
说说这里的几个参数的作用吧:
1. - (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(id)parameters constructingBodyWithBlock:(void (^)(id <AFMultipartFormData> formData))block success:(void (^)(NSURLSessionDataTask *task, id responseObject))success failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure;这是AFN中的方法:参数1:上传的URL参数2:上传参数参数3:上传的数据(图片等)参数4:上传成功的回调block块参数5:上传失败的回调block块2,对于参数3的说明:- (void)appendPartWithFileData:(NSData *)data name:(NSString *)nam fileName:(NSString *)fileName mimeType:(NSString *)mimeType;- 参数1:图片的NSData - 参数2:图片对应的上传参数- 参数3:图片名(上传到后台的xxx.jpg)- 参数4:图片的格式
- 多张图片的上传(批量)
#pragma mark - 利用AFNetworking将场地信息上传- (void)upLoadAddressWithURLString:(NSString *)urlString imageParameter:(NSString *)imageParameter parameters:(NSDictionary *)parameters images:(NSArray *)images{ // 做前期的准备处理 for (UIImage *img in images) { if (![img isKindOfClass:[UIImage class]]) { return; } } AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager POST:urlString parameters:parameters constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { int iCount = 0; for (UIImage *img in images) { NSData *imgData = UIImageJPEGRepresentation(img, 1); NSString *fileName = [NSString stringWithFormat:@"placeImg%d.jpeg", iCount]; [formData appendPartWithFileData:imgData name:imageParameter fileName:fileName mimeType:@"image/jpeg"]; iCount++; } } success:^(AFHTTPRequestOperation *operation, id responseObject) { NSLog(@"上传成功 结果 = %@", responseObject); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"上传失败 %@", [error description]); }];}-参数1:上传的URL-参数2: 图片对应的上传参数-参数3: 其他上传参数-参数4: 图片数组* 其实跟单张上传差不多,只不过是将多张图片转化NSData类型后字啊拼接到formData中。大家仔细看看就回明白到。大家可以根据自己的需求进行封装,这样就可以得到很多益处的。我只是将用法记录下来。便于今后的学习用,到时候根据具体的情况在进行封装。
1 0
- ios 上传图片
- IOS 上传图片
- ios 图片上传
- IOS 上传图片 ASIFormDataRequest
- IOS之上传图片
- ios http 上传图片
- ios 图片上传
- iOS 图片上传
- Java、ios图片上传
- iOS上传图片
- 图片压缩 ios 上传
- ios 上传图片
- iOS 之图片上传
- iOS多图片上传
- IOS HTTP 上传图片
- IOS:多图片上传
- iOS图片上传
- ios 上传图片
- poj-3159 Candies
- 使用maven生成可执行jar包
- Swift-类和结构体
- MySql数据库(一)
- [笔记]Ejabberd-15/16 Pubsub 分页获取Items问题
- iOS图片上传
- Codeforces 617C(Watering Flowers)
- Java正则表达式
- 【黑马程序员】Foundation框架(三)
- hdu1004 (map容器的使用)
- Visual format language(1)
- 关于Apple Mac&iOS本机安全
- 机器学习实战笔记 k-近邻算法
- android中获取坐标