AFNetWorking的get與post用法以及進行圖片上傳

這篇文章主要說一下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);

        }

    }];




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章