下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
@第一种
@第二种:
#pragma mark - AFNetworking上传文件 - (void)didClickUploadButtonAction{ NSString *fileName = @"hmt"; // 确定需要上传的文件(假设选择本地的文件) NSURL *filePath = [[NSBundle mainBundle] URLForResource:fileName withExtension:@"png"]; NSDictionary *parameters = @{@"name":@"额外的请求参数"}; AFHTTPRequestOperationManager *requestManager = [AFHTTPRequestOperationManager manager]; [requestManager POST:@"http://192.168.10.18:8080/AFNetworkingServer/upload" parameters:parameters constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { /** * appendPartWithFileURL // 指定上传的文件 * name // 指定在服务器中获取对应文件或文本时的key * fileName // 指定上传文件的原始文件名 * mimeType // 指定商家文件的MIME类型 */ [formData appendPartWithFileURL:filePath name:@"file" fileName:[NSString stringWithFormat:@"%@.png",fileName] mimeType:@"image/png" error:nil]; } success:^(AFHTTPRequestOperation *operation,id responseObject) { [[[UIAlertView alloc] initWithTitle:@"上传结果" message:[[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding] delegate:self cancelButtonTitle:@"" otherButtonTitles:nil] show]; } failure:^(AFHTTPRequestOperation *operation,NSError *error) { NSLog(@"获取服务器响应出错"); }]; }
@第二种:
NSData *imageData = UIImagePNGRepresentation(image); //转码成UTF-8 否则可能会出现错误 NSString *URLTmp = [NSString stringWithFormat:@"%@%@",CGBaseURL,path]; NSString *URLTmps = [URLTmp stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; URLTmp = URLTmps; NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:URLTmp parameters:body constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { [formData appendPartWithFileData:imageData name:@"headerImg" fileName:@"123.png" mimeType:@"image/png"]; } error:nil]; AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; NSProgress *progress = nil; manager.responseSerializer = [AFHTTPResponseSerializer serializer]; NSURLSessionUploadTask *uploadTask = [manager uploadTaskWithStreamedRequest:request progress:&progress completionHandler:^(NSURLResponse *response,id responseObject,NSError *error) { if (error) { NSLog(@"Error: %@",error); } else { block(responseObject); } }]; [uploadTask resume];
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。