zoukankan      html  css  js  c++  java
  • iOS开发之使用AFN上传图片

    1. //1.创建管理者对象  
    2. AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];  
    3. manager.responseSerializer = [AFJSONResponseSerializer serializer];  
    4. manager.requestSerializer = [AFJSONRequestSerializer serializer];  
    5.   
    6. //2.上传文件  
    7. NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"userHeader.png", @"userHeader", nil nil];  
    8. [manager POST:URL parameters:dict constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {  
    9.   
    10.     //上传文件参数  
    11.     [formData appendPartWithFileData:data name:@"userHeader" fileName:@"userHeader.png" mimeType:@"image/jpeg"];  
    12.       
    13. } progress:^(NSProgress * _Nonnull uploadProgress) {  
    14.       
    15.     //打印上传进度  
    16.     CGFloat progress = 100.0 * uploadProgress.completedUnitCount / uploadProgress.totalUnitCount;  
    17.     DLog(@"%.2lf%%", progress);  
    18.       
    19. } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {  
    20.       
    21.     //请求成功  
    22.     DLog(@"请求成功:%@",responseObject);  
    23.       
    24. } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {  
    25.       
    26.     //请求失败  
    27.     DLog(@"请求失败:%@",error);  
    28.   
    29. }];  

    二、多张图片

    1. //1.创建管理者对象  
    2. AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];  
    3. manager.responseSerializer = [AFJSONResponseSerializer serializer];  
    4. manager.requestSerializer = [AFJSONRequestSerializer serializer];  
    5.   
    6. //2.上传文件  
    7. NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"userHeader.png", @"userHeader", @"image.png", @"image", nil nil];  
    8. [manager POST:URL parameters:dict constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {  
    9.   
    10.     //上传文件参数  
    11.     [formData appendPartWithFileData:data1 name:@"userHeader" fileName:@"userHeader.png" mimeType:@"image/jpeg"];  
    12.     [formData appendPartWithFileData:data2 name:@"image" fileName:@"image.png" mimeType:@"image/jpeg"];  
    13.       
    14. } progress:^(NSProgress * _Nonnull uploadProgress) {  
    15.       
    16.     //打印上传进度  
    17.     CGFloat progress = 100.0 * uploadProgress.completedUnitCount / uploadProgress.totalUnitCount;  
    18.     DLog(@"%.2lf%%", progress);  
    19.       
    20. } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {  
    21.       
    22.     //请求成功  
    23.     DLog(@"请求成功:%@",responseObject);  
    24.       
    25. } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {  
    26.       
    27.     //请求失败  
    28.     DLog(@"请求失败:%@",error);  
    29.   
    30. }]; 
  • 相关阅读:
    NYOJ228 士兵杀敌(五)
    NYOJ236 彩色棒 字典树 + 并查集 + 欧拉路
    给大家推荐一个用电脑拨打普通电话的软件skype
    转:甲骨文将以74亿美元收购太阳微系统公司
    花生壳原理求解
    利用IHttpModule及Session_End事件进行在线会员统计遇到的问题
    我的开发环境介绍及一个 Expression Bland 画图形的例子
    WF (Windows Workflow Foundation) 工作流学习(二)一个Asp.Net 与 顺序工作流 结合的例子
    WPF 、WinFrom 调用顺序工作流的登陆窗口例子
    Expression Bland 入门视频(三) 菜单、项目面板及工作区介绍
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/6910290.html
Copyright © 2011-2022 走看看