首页 > Web开发 > 详细

AFNetwork学习(二)——GET/POST请求

时间:2016-01-20 22:26:52      阅读:183      评论:0      收藏:0      [点我收藏+]

为了学习AFNetwork,自己搭建整理了一下AFNetwork向后台发送请求和后台返回json数据的整个处理过程。利用Struts2搭建了一个后台,提供Action并返回json数据


环境:Xcode6.3

后台:tomcat+myeclipse10.6  框架:struts2


1.新建一个single-view applicationproject名为IOS_AFNetwork,开发语言选择OC.

2.将AFNetwork库文件增加到project中,例如以下图:

技术分享

3.引入SystemConfiguration.framework、MobileCoreService.framework、Security.framework 。例如以下图:

技术分享


4.在main.storyboard中加入两个button。发别用来发送get和post请求,并设置相应的响应函数。

例如以下图:

技术分享


5.发送Get请求

//get请求
- (IBAction)getRuquest:(id)sender {
    //为了測试方便。自己搭建了一个javaweb后台
    NSString *URLString = @"http://localhost:8080/server/login.action";
    //传递參数
    NSDictionary *loginInputValue = @{@"username" : @"1234567890",
                                      @"password" : @"123456"};

    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    manager.requestSerializer.timeoutInterval = self.timeInternal;
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];
    self.operation = [manager GET:URLString
                       parameters:loginInputValue
                          success:^(AFHTTPRequestOperation *operation, id responseObject) {
                             //解析后台返回的json串。将json转为字典
                              NSDictionary *responseData = [NSDictionary dictionaryFromJSONData:(NSData *)responseObject];
                              NSLog(@"success:%@",responseData);
                              NSString *name = [responseData objectForKey:@"name"];
                              NSLog(@"name : %@",name);
                          }
                          failure:^(AFHTTPRequestOperation *operation, NSError *error) {
                              NSLog(@"error info :%@",[error description]);
                          }];
}

6.发送Post请求

- (IBAction)postRequest:(id)sender {
    
    NSString *URLString = @"http://localhost:8080/server/login.action";
    NSDictionary *loginInputValue = @{@"username" : @"1234567890",
                                      @"password" : @"123456"};
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    manager.requestSerializer.timeoutInterval = self.timeInternal;
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];
   
    self.operation =  [manager POST:URLString
                         parameters:loginInputValue
                            success:^(AFHTTPRequestOperation *operation, id responseObject) {
                            NSDictionary *responseData = [NSDictionary dictionaryFromJSONData:(NSData *)responseObject];
                            NSString *name = [responseData objectForKey:@"name"];
                            NSLog(@"name : %@",name);

                            } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"error info :%@",[error description]);    }];

}

OC代码下载地址:

http://download.csdn.net/detail/yuj9006/8876937


后台代码下载地址:

http://download.csdn.net/detail/yuj9006/8876999


AFNetwork学习(二)——GET/POST请求

原文:http://www.cnblogs.com/lcchuguo/p/5146670.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!