- (void)upLoadSigleImage:(UIImage*) image completion:(void (^)(BOOL isSuccess))completion{
if (!image){
return;
};
// //1.创建管理者对象
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
[manager.requestSerializer setValue:@"multipart/form-data" forHTTPHeaderField:@"Content-Type"];
NSString *urlString = @"上传的网址";
NSData *imageData = UIImageJPEGRepresentation(image, 0.7);
//post请求
[manager POST:urlString parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyyMMddHHmmss";
NSString *str = [formatter stringFromDate:[NSDate date]];
NSString *fileName = [NSString stringWithFormat:@"%@.png", str];
/*
此方法参数
1. 要上传的[二进制数据]
2. 我这里的imgFile是对应后台给你url里面的图片参数,别瞎带。
3. 要保存在服务器上的[文件名]
4. 上传文件的[mimeType]
*/
[formData appendPartWithFileData:imageData name:@"mfile" fileName:fileName mimeType:@"image/jpeg"];
} progress:^(NSProgress * _Nonnull uploadProgress) {
float progress = 1.0 * uploadProgress.completedUnitCount/uploadProgress.totalUnitCount;
NSLog(@"上传进度%f",progress);
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSString *errmsg = [responseObject objectForKey:@"errmsg"];
NSString *mediaID = [responseObject objectForKey:@"mediaid"];
if (mediaID && [errmsg isEqualToString:@"ok"]) {
NSLog(@"上传成功");
completion(YES);
}else{
completion(NO);
}
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"请求失败:%@",error);
completion(NO);
}];
}
AFN单张图片上传
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 利用AFN封装上传多张图片方法,并压缩图片体积 对您有用的话,可否关注下本人?以此激励我和您的共同提高,谢谢了. ...
- 最近在做一个多张图片上传及图片展示功能,在这期间,碰到了几个坑,现在已经解决了,为了避免各位再走类似的坑,...