使用AFNetworking进行图片上传
2015-11-09 17:38
423 查看
//图片 NSData* imageData = UIImagePNGRepresentation(tempImage); //上传图片 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; manager.responseSerializer = [AFHTTPResponseSerializer serializer]; NSString *urlstring = @"api"; [manager POST:urlstring parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { // 在此位置生成一个要上传的数据体 // form对应的是html文件中的表单 // 在网络开发中,上传文件时,是文件不允许被覆盖,文件重名 // 要解决此问题,可以在上传时使用当前的系统事件作为文件名 // 设置时间格式 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; formatter.dateFormat = @"yyyyMMddHHmmss"; NSString *str = [formatter stringFromDate:[NSDate date]]; NSString *fileName = [NSString stringWithFormat:@"%@.png", str]; /* 此方法参数 1. 要上传的[二进制数据] 2. 对应网站上[upload.php中]处理文件的[字段"file"] 3. 要保存在服务器上的[文件名] 4. 上传文件的[mimeType] */ [formData appendPartWithFileData:data name:@"image" fileName:@"image.png" mimeType:@"image/png/jpeg"]; } success:^(AFHTTPRequestOperation *operation, id responseObject) { if (success) { success(responseObject); } } failure:^(AFHTTPRequestOperation *operation, NSError *error) { if (fail) { fail(); } }];
</pre><pre>
网上搜到的
把一张图片 转成二进制流 用AFNetworking POST 上传到服务器.
AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:[NSURL URLWithString:BaseUrl]]; manager.responseSerializer = [AFJSONResponseSerializer serializer]; manager.requestSerializer.timeoutInterval = TimeoutInterval; [manager POST:Request_updateCompanyInfo parameters:paramDict constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { NSData *data=UIImagePNGRepresentation(_userImage); // 设置时间格式 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; formatter.dateFormat = @"yyyyMMddHHmmss"; NSString *str = [formatter stringFromDate:[NSDate date]]; NSString *fileName = [NSString stringWithFormat:@"%@.png", str]; [formData appendPartWithFileData:data name:@"logo_img" fileName:fileName mimeType:@"image/png"]; } success:^(AFHTTPRequestOperation *operation, id responseObject) { [super stopLoadingCompletedWithMessage:@"提交成功"]; [self.navigationController popViewControllerAnimated:YES]; } failure:^(AFHTTPRequestOperation *operation, NSError *error) { }];
相关文章推荐
- 实习整理(四)
- Python的zip函数
- CSRF简单介绍
- php 框架 laravel安装
- linux笔记 第七天 文件查找find命令、文件特殊权限、while和until循环
- android 异常 :ScrollView can host only one direct child
- 开发利器--JSONVIEW插件 网页json数据直接转换
- MongoDB之安装
- 分布式与集群的区别
- iOS获取当前版本号 Bundle Id等信息的方法
- CKEditor上传图片—配置CKFinder
- Color Cube – 国产的优秀配色取色工具
- Centos6.5 rpm方式指定目录安装JDK
- Android-Android5.1屏幕固定功能(screen pinning)分析
- UIButton 图标与文字上下垂直对齐
- 设置xml中控件的圆润边框效果
- 循环日期的shell
- mybatis+spring事务管理
- 编程之美-找到符合条件的整数
- 浅谈基于JavaScript的DDOS攻击