iOS 开发技巧心得体会
2016-03-29 14:59
435 查看
iOS 传值 属性传值 :适应于push 前一个页面 向后一个页面传值 在前一个页面则赋值给后一个页面, 注意属性的申明 应放于 .h文件当中
用AFNetworking 上传
第一种 通过上传参数 base64
NSString *str = [NSString
stringWithFormat:@"%@%@",HOME_BANNER_URL,@"/Refund/uploadVoucher"];
NSDictionary *subDict =
@{@"token":[IWUserDefaults
objectForKey:@"token"],@"baseData":baseStr,@"ext":@"jpeg",@"type":@(2)};
AFHTTPRequestOperationManager *manager =[[AFHTTPRequestOperationManager
alloc]init];
NSDictionary *parameters =subDict;
[manager POST:str
parameters:parameters
constructingBodyWithBlock:^(id<AFMultipartFormData>
_Nonnull formData) {
// [formData appendPartWithFileURL:fileP name: imageName error:nil];
} success:^(AFHTTPRequestOperation *
_Nonnull operation,
id _Nonnull responseObject) {
NSLog(@"Success :%@",responseObject);
} failure:^(AFHTTPRequestOperation *
_Nullable operation,
NSError * _Nonnull error) {
NSLog(@"Error :%@",error);
}];
第二种 无参数 表格上传file 链接地址 : http://www.tuicool.com/articles/JFJrue
用AFNetworking 上传
第一种 通过上传参数 base64
NSString *str = [NSString
stringWithFormat:@"%@%@",HOME_BANNER_URL,@"/Refund/uploadVoucher"];
NSDictionary *subDict =
@{@"token":[IWUserDefaults
objectForKey:@"token"],@"baseData":baseStr,@"ext":@"jpeg",@"type":@(2)};
AFHTTPRequestOperationManager *manager =[[AFHTTPRequestOperationManager
alloc]init];
NSDictionary *parameters =subDict;
[manager POST:str
parameters:parameters
constructingBodyWithBlock:^(id<AFMultipartFormData>
_Nonnull formData) {
// [formData appendPartWithFileURL:fileP name: imageName error:nil];
} success:^(AFHTTPRequestOperation *
_Nonnull operation,
id _Nonnull responseObject) {
NSLog(@"Success :%@",responseObject);
} failure:^(AFHTTPRequestOperation *
_Nullable operation,
NSError * _Nonnull error) {
NSLog(@"Error :%@",error);
}];
第二种 无参数 表格上传file 链接地址 : http://www.tuicool.com/articles/JFJrue
NSURLRequest *request = [_httpClient multipartFormRequestWithMethod:@"POST" path:@"upload.php" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { 14 // 在此位置生成一个要上传的数据体 15 // form对应的是html文件中的表单 16 17 18 UIImage *image = [UIImage imageNamed:@"头像1"]; 19 NSData *data = UIImagePNGRepresentation(image); 20 21 // 在网络开发中,上传文件时,是文件不允许被覆盖,文件重名 22 // 要解决此问题, 23 // 可以在上传时使用当前的系统事件作为文件名 24 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 25 // 设置时间格式 26 formatter.dateFormat = @"yyyyMMddHHmmss"; 27 NSString *str = [formatter stringFromDate:[NSDate date]]; 28 NSString *fileName = [NSString stringWithFormat:@"%@.png", str]; 29 30 31 /* 32 此方法参数 33 1. 要上传的[二进制数据] 34 2. 对应网站上[upload.php中]处理文件的[字段"file"] 35 3. 要保存在服务器上的[文件名] 36 4. 上传文件的[mimeType] 37 */ 38 [formData appendPartWithFileData:data name:@"file" fileName:fileName mimeType:@"image/png"]; 39 }]; 40 41 // 3. operation包装的urlconnetion 42 AFHTTPRequestOperation *op = [[AFHTTPRequestOperation alloc] initWithRequest:request]; 43 44 [op setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { 45 NSLog(@"上传完成"); 46 } failure:^(AFHTTPRequestOperation *operation, NSError *error) { 47 NSLog(@"上传失败->%@", error); 48 }]; 49 50 //执行 51 [_httpClient.operationQueue addOperation:op];
相关文章推荐
- 关于iOS多线程,你看我就够了
- iOS开发:IB VS 纯代码
- iOS开发中的系统版本比较
- iOS CocoaPods安装和使用图解
- iOS视频水印
- iOS之 Xcode7下 bitcode的工作流程及安全评估
- 又一个高性能轻量级的iOS模型框架YYModel
- iOS单例模式(Singleton)
- ios开发-处理服务器返回的日期
- iOS应用崩溃日志分析 iOS应用崩溃日志揭秘
- ios: 画半个椭圆
- iOS中KVC和KVO
- IOS最新好用的框架推荐 2014-10-29
- iOS开发篇(九)FMDB的使用与介绍2
- iOS 全局变量
- 提高iOS开发效率的第三方框架(更新中)
- 七款Debug工具推荐:iOS开发必备的调试利器
- ios学习--属性字符串NSAttributeString与NSString相互转换包含图片和emoji图
- 《精通iOS开发·第六版》数据持久化基础知识之SOLite3持久化
- 《精通iOS开发·第六版》数据持久化基础知识之CoreData持久化