zoukankan      html  css  js  c++  java
  • iOS中AFNetworking的简单使用

    GET:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
        // 1.获得请求管理者
        AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
         
        // 2.封装请求参数
        NSMutableDictionary *params = [NSMutableDictionary dictionary];
        params[@"userId"] = [appDefault objectForKey:@"userId"];
        params[@"IMSI"] = _IMSI.text;
        params[@"nickName"] = _nickName.text;
        params[@"phoneNumber"] = _phoneNumber.text;
         
        NSString *url = [ServiceInfo stringByAppendingString:@"http://103.238.80.57:8080/Vietnam/Application/bindingDevice"];
         
        // 3.发送GET请求
        [mgr GET:url parameters:params
        success:^(AFHTTPRequestOperation *operation, id responseObject) {
             NSLog(@"%@",responseObject);
        } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
             NSLog(@"%@",error);
        }];

    POST:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    // 1.获得请求管理者
        AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
         
        // 2.封装请求参数
        NSMutableDictionary *params = [NSMutableDictionary dictionary];
        params[@"userId"] = [appDefault objectForKey:@"userId"];
        params[@"IMSI"] = _IMSI.text;
        params[@"nickName"] = _nickName.text;
        params[@"phoneNumber"] = _phoneNumber.text;
         
        NSString *url = [ServiceInfo stringByAppendingString:@"http://103.238.80.57:8080/Vietnam/Application/bindingDevice"];
         
        // 3.发送GET请求
        [mgr POST:url parameters:params
        success:^(AFHTTPRequestOperation *operation, id responseObject) {
             NSLog(@"%@",responseObject);
        } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
             NSLog(@"%@",error);
        }];

    值得注意的是,AFNetworking默认是使用JSON格式发送和响应返回来的数据的,如果返回来的数据不是JSON,就需要设置一下请求管理者,下面请看代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // 1.获得请求管理者
        AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
         
        // 因为传递过去和接收回来的数据都不是json类型的,所以在这里要设置为AFHTTPRequestSerializer和AFHTTPResponseSerializer
        mgr.requestSerializer = [AFHTTPRequestSerializer serializer];// 请求
        mgr.responseSerializer = [AFHTTPResponseSerializer serializer];// 响应
         
        // 2.封装请求参数
        NSMutableDictionary *params = [NSMutableDictionary dictionary];
        params[@"userId"] = [appDefault objectForKey:@"userId"];
        params[@"IMSI"] = _IMSI.text;
        params[@"nickName"] = _nickName.text;
        params[@"phoneNumber"] = _phoneNumber.text;
         
        NSString *url = [ServiceInfo stringByAppendingString:@"http://103.238.80.57:8080/Vietnam/Application/bindingDevice"];
         
        // 3.发送GET请求
        [mgr GET:url parameters:params
         success:^(AFHTTPRequestOperation *operation, id responseObject) {
                // 转码,如果返回的数据不是JSON,这里必须要转码
                NSString *string = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
     
                NSLog(@"%@",string);
        } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
                NSLog(@"%@",error);
        }];
  • 相关阅读:
    hdu 2050 折线分割平面 递推
    hdu 2044 一只小蜜蜂 斐波那契数列 递推
    hdu 2018 母牛的故事 递推
    hdu 2084 数塔 dp 动态规划
    Linux 常用协议结构体及详解
    【ArcEngine入门与提高】Element(元素)、Annotation(注记)旋转
    AO总结10:MapControl控件
    esriControlsMousePointer 控制鼠标指针
    图解VS2010打包全过程(转)
    ArcEngine中打开各种数据源(WorkSpace)的连接(转)
  • 原文地址:https://www.cnblogs.com/chunji/p/5257574.html
Copyright © 2011-2022 走看看