现在 AFNetworking 的版本是3.0,和以前的2.0版本发生了比较大的改变,为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持
弃用的类
下面的类已从AFNetworking 3.0中废弃:
- AFURLConnectionOperation
- AFHTTPRequestOperation
- AFHTTPRequestOperationManager
- UIImageView+AFNetworking
- UIWebView+AFNetworking
- UIButton+AFNetworking
- securityPolicy
- requestSerializer
- responseSerializer
之前也有很多图片上传的demo,但如果随着AFNetworking的升级也将被弃用,这里附上一新版本的AFNetworking的图片上传方法,其实改动的地方微乎其微,原里还是一样的。
- (IBAction)iconViewBtnOnClick:(UIButton *)sender
{
// 获得网络管理者
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
// 设置请求参数
NSMutableDictionary *params = [NSMutableDictionary dictionary];
params[@"key"] = AppKey;
params[@"codeType"] = @"5004";
[manager POST:URL parameters:params constructingBodyWithBlock:^(id_Nonnull formData) {// 获取图片数据
NSData *fileData = https://www.it610.com/article/UIImageJPEGRepresentation([JYDataManager sharedManager].img, 1.0);
// 设置上传图片的名字
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyyMMddHHmmss";
NSString *str = [formatter stringFromDate:[NSDate date]];
NSString *fileName = [NSString stringWithFormat:@"%@.png", str];
[formData appendPartWithFileData:fileData name:@"image" fileName:fileName mimeType:@"image/png"];
} progress:^(NSProgress * _Nonnull uploadProgress) {} success:^(NSURLSessionDataTask * _Nonnull task, id_Nullable responseObject) {
// 返回结果
NSLog(@"%@", responseObject[@"result"]);
self.label.text = responseObject[@"result"];
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {}];
}
下载:AFNetworking图片上传Demo【AFNetworking 图片上传至服务器】