AFNetworking使用,afnetworking

來源:互聯網
上載者:User

AFNetworking使用,afnetworking

//Get請求資料

+ (void)get:(NSString *)urlStr params:(NSDictionary *)params success:(void (^)(id))success failure:(void (^)(NSError *))failure

{

        // 1.獲得要求管理者

        AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];

        NSString *URL = [NSString stringWithFormat:@"%@%@",HOST,urlStr];

        NSLog(@"%@",URL);

        // 2.發送GET請求

        [mgr GET:URL parameters:params

        success:^(AFHTTPRequestOperation *operation, id responseObj) {

            if (success) {

                success(responseObj);

            }

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

            if (failure) {

                failure(error);

            }

        }];

}

 

//Post請求資料

+ (void)post:(NSString *)urlStr params:(NSDictionary *)params success:(void (^)(id))success failure:(void (^)(NSError *))failure

{

    if ([[self class] checkNetworkState]) {

        //擷取公用參數

        NSMutableDictionary *requestParms = [[self class] publicParms];

        if (params!=nil) {

            //不為空白 合并字典,公用參數字典

            [requestParms addEntriesFromDictionary:params];

        }

        //1.獲得要求管理者

        AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];

    /********這裡很重要********/

        //1.mgr.responseSerializer = [AFJSONResponseSerializer serializer];

        //2.mgr.requestSerializer = [AFJSONRequestSerializer serializer];

        //3.mgr.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"application/json"];

 

        NSString *URL = [NSString stringWithFormat:@"%@%@",HOST,urlStr];

        NSLog(@"當前介面URL==%@",URL);

        NSLog(@"當前接請求的 參數 ==%@",requestParms);

        // 2.發送POST請求

        [mgr POST:URL parameters:requestParms success:^(AFHTTPRequestOperation *operation, id responseObj) {

            

            success(responseObj);

            

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

            

            failure(error);

            [MBProgressHUD hideAllHUDsForView:[UIApplication sharedApplication].keyWindow animated:YES];

            NSLog(@"底層失敗 ==error ==%@",[error localizedDescription]);

            [MBProgressHUD showError:@"網路不給力,稍後再試" toView:[UIApplication sharedApplication].keyWindow];

            

        }];

        

    }else{

        

        [MBProgressHUD hideAllHUDsForView:[UIApplication sharedApplication].keyWindow animated:YES];

        [MBProgressHUD showError:@"網路已斷開,請檢查網路連接" toView:[UIApplication sharedApplication].keyWindow];

        failure(nil);

        

    }

}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.