重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍iOS如何使用AFN进行单图和多图上传,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
创新互联建站服务项目包括淳安网站建设、淳安网站制作、淳安网页制作以及淳安网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,淳安网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到淳安省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
图片上传时必要将图片进行压缩,不然会上传失败
1.单张图上传
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager POST:urlString parameters:params constructingBodyWithBlock:^(id_Nonnull formData) { //使用日期生成图片名称 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss"; NSString *fileName = [NSString stringWithFormat:@"%@.png",[formatter stringFromDate:[NSDate date]]]; [formData appendPartWithFileData:imageData name:@"uploadFile" fileName:fileName mimeType:@"image/png"]; } success:^(AFHTTPRequestOperation * _Nonnull operation, id _Nonnull responseObject) { //上传图片成功执行回调 completion(responseObject,nil); } failure:^(AFHTTPRequestOperation * _Nonnull operation, NSError * _Nonnull error) { //上传图片失败执行回调 completion(nil,error); }];
2.多图上传
多图上传和单图上传区别在于文件名称
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager POST:urlString parameters:params constructingBodyWithBlock:^(id_Nonnull formData) { NSInteger imgCount = 0; for (NSData *imageData in imageDatas) { NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss:SSS"; NSString *fileName = [NSString stringWithFormat:@"%@%@.png",[formatter stringFromDate:[NSDate date]],@(imgCount)]; [formData appendPartWithFileData:imageData name:[NSString stringWithFormat:@"uploadFile%@",@(imgCount)] fileName:fileName mimeType:@"image/png"]; imgCount++; } } success:^(AFHTTPRequestOperation * _Nonnull operation, id _Nonnull responseObject) { completion(responseObject,nil); } failure:^(AFHTTPRequestOperation * _Nonnull operation, NSError * _Nonnull error) { completion(nil,error); }];
以上是“iOS如何使用AFN进行单图和多图上传”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!