您的位置:首页 > 移动开发 > IOS开发

AFNetWorking的get与post用法以及进行图片上传

2016-04-21 11:15 369 查看
这篇文章主要说一下AFNetWorking的get与post用法以及使用AFNetWorking进行图片上传的问题

首先,是AFNetWorking的get用法:

 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager
manager];

    //
设置超时时间

    [manager.requestSerializer
willChangeValueForKey:@"timeoutInterval"];

    manager.requestSerializer.timeoutInterval =
8.0f;

    [manager.requestSerializer
didChangeValueForKey:@"timeoutInterval"];

    //
不让AFNetworking自动解析下载下来的内容

    manager.responseSerializer = [AFHTTPResponseSerializer
serializer];

    

    [manager GET:urlStr
parameters:nil
success:^(AFHTTPRequestOperation *operation,
id responseObject) {

        if (success) {

            DLog(@"success json = %@",operation.responseString);

            id result =
nil;

            result = [NSJSONSerialization
JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers
error:NULL];

            if (result ==
nil) {

               

            }

else

{

//一些自己要的操作

}

        }

    } failure:^(AFHTTPRequestOperation *operation,
NSError *error) {

        if (failure) {

            DLog(@"error = %@",error);

           // failure(error);

        }

    }];

2.AFNetWorking的post用法

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager
manager];

    //
设置超时时间

    [manager.requestSerializer
willChangeValueForKey:@"timeoutInterval"];

    manager.requestSerializer.timeoutInterval =
8.0f;

    [manager.requestSerializer
didChangeValueForKey:@"timeoutInterval"];

    //
不让AFNetworking自动解析下载下来的内容

    manager.responseSerializer = [AFHTTPResponseSerializer
serializer];

    //body为要传给服务器的参数(字典)

    [manager POST:urlStr
parameters:body success:^(AFHTTPRequestOperation *operation,
id responseObject) {

        if (success){

            DLog(@"success json = %@",operation.responseString);

            id result =
nil;

            result = [NSJSONSerialization
JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers
error:NULL];

            if (result ==
nil) {

                

            }

            else{

   }

        }

    } failure:^(AFHTTPRequestOperation *operation,
NSError *error) {

        if (failure) {

            DLog(@"error = %@",error);

        }

    }];

3.AFNetWorking的上传图片用法

UIImage *image = imgArr[0];

    

    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager
manager];

    [manager.requestSerializer
willChangeValueForKey:@"timeoutInterval"];

    manager.requestSerializer.timeoutInterval =
10.0f;

    [manager.requestSerializer
didChangeValueForKey:@"timeoutInterval"];

    //
不让AFNetworking自动解析下载下来的内容

    manager.responseSerializer = [AFHTTPResponseSerializer
serializer];

    

    [manager POST:urlStr
parameters:body constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {

        

        NSData *imageData =
UIImageJPEGRepresentation(image, 0.5);

        [formData appendPartWithFileData:imageData
name:@"file"
fileName:@"headIcon.png"
mimeType:@"image/png"];

    } success:^(AFHTTPRequestOperation *operation,
id responseObject) {

        if (success){

            DLog(@"success json = %@",operation.responseString);

            id result =
nil;

            result = [NSJSONSerialization
JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers
error:NULL];

            if (result ==
nil) {

            }

        }

    } failure:^(AFHTTPRequestOperation *operation,
NSError *error) {

        if (failure) {

            DLog(@"error = %@",error);

        }

    }];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息