AFNetworking3.0 GET/POST 以及上传(多)文件,下载文件

//初始化 AFHTTPSessionManager

- (instancetype)init {

    if(self = [superinitWithBaseURL:[NSURLURLWithString:URELHEAD]]) {//请求的链接头

        self.securityPolicy = [AFSecurityPolicypolicyWithPinningMode:AFSSLPinningModeNone];

        self.requestSerializer = [AFHTTPRequestSerializerserializer];

        self.responseSerializer = [AFJSONResponseSerializerserializer];//默认返回的是dictionary

        self.requestSerializer.timeoutInterval = 30;

    }

    returnself;

}


//根据请求的类型进行不同的操作

        case TYPE_GET: {

            [selfGET:url parameters:dicprogress:nilsuccess:^(NSURLSessionDataTask *_Nonnull task, id _Nullable responseObject) {

                

            } failure:^(NSURLSessionDataTask *_Nullable task, NSError *_Nonnull error) {

                

            }];

        }

            break;

        caseTYPE_POST: {

            [selfPOST:url parameters:dicprogress:nilsuccess:^(NSURLSessionDataTask *_Nonnull task, id _Nullable responseObject) {

                [

            } failure:^(NSURLSessionDataTask *_Nullable task, NSError *_Nonnull error) {

                

            }];

        }

            break;

        caseTYPE_DOWNLOAD: {//下载文件

           

NSURLSessionDownloadTask *task

 = [ self downloadTaskWithRequest :[ NSURLRequest requestWithURL :[ NSURL URLWithString :url]] progress : nil destination :^ NSURL * _Nonnull ( NSURL * _Nonnull targetPath, NSURLResponse * _Nonnull response) {

                NSString *path = [[NSHomeDirectory()stringByAppendingPathComponent:@"Documents"]stringByAppendingPathComponent:response.suggestedFilename];//下载文件的存储目录

                return [NSURLfileURLWithPath:path];

            } completionHandler:^(NSURLResponse *_Nonnull response, NSURL * _Nullable filePath,NSError * _Nullable error) {

                

            }];

    [task resume];

        }

            break;

        caseTYPE_UPLOAD: {//上传文件

            [selfPOST:url parameters:dicconstructingBodyWithBlock:^(id<AFMultipartFormData_Nonnull formData) {

                if(nil != fdic) {//单个或多个文件上传

                    for(NSString *keyin [fdic allKeys]) {

                        NSString *filePath = [fdicobjectForKey:key];

                        [formData appendPartWithFileURL:[NSURLfileURLWithPath:filePath]name:key error:nil];

                    }

                }

            } progress:nilsuccess:^(NSURLSessionDataTask *_Nonnull task, id _Nullable responseObject) {

                

            } failure:^(NSURLSessionDataTask *_Nullable task, NSError *_Nonnull error) {

                

            }];

        }

            break;

        default:

            break;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值