IOS Http请求

来源:互联网 发布:域名注册阿里云 编辑:程序博客网 时间:2024/05/22 04:41

ViewController.h文件


#import <UIKit/UIKit.h>@interface ViewController : UIViewController<NSURLConnectionDelegate>  //get 异步请求需要继承这个协议- (IBAction)GetRequest:(id)sender;- (IBAction)PostRequest:(id)sender;- (IBAction)GetRequest2:(id)sender;@property (weak, nonatomic) IBOutlet UILabel *result;//接收从服务器返回数据。@property (strong,nonatomic) NSMutableData *datas;@end

Viewcontroller.m 文件


#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    // Do any additional setup after loading the view, typically from a nib.}- (void)didReceiveMemoryWarning {    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}//get 同步请求- (IBAction)GetRequest:(id)sender {                NSString *strURL = [[NSString alloc] initWithFormat:@"http://192.168.0.105:8080/iosServer/index.jsp?action=%@&username=%@&pwd=%@",                        @"testiosloign",@"liu",@"123"];        NSURL *url=[NSURL URLWithString:strURL];    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];            NSData *data  = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];    NSLog(@"请求完成...");    //    NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];//               NSString* aStr= [[NSString alloc] initWithData:data   encoding:NSASCIIStringEncoding];        NSLog(@"\n test return resrul:%@",aStr);        self.result.text = aStr;}- (IBAction)PostRequest:(id)sender{            NSString *strURL = [[NSString alloc] initWithFormat:@"http://192.168.0.105:8080/iosServer/index.jsp"];       NSURL *url=[NSURL URLWithString:strURL];        NSString *post = [NSString stringWithFormat:@"action=%@&username=%@&pwd=%@", @"postrequest",@"JSON",@"query"];    NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding];        NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];        [request setHTTPMethod:@"POST"];    [request setHTTPBody:postData];        NSURLConnection *connection = [[NSURLConnection alloc]                                   initWithRequest:request delegate:self];        if (connection) {        _datas = [NSMutableData new];    }    }//get 异步请求- (IBAction)GetRequest2:(id)sender{    NSString *strURL = [[NSString alloc] initWithFormat:@"http://192.168.0.105:8080/iosServer/index.jsp?action=%@&username=%@&pwd=%@",                        @"testiosloign",@"liu",@"123"];        NSURL *url=[NSURL URLWithString:strURL];        NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];        NSURLConnection *connection = [[NSURLConnection alloc]                                   initWithRequest:request                                   delegate:self];        if (connection)    {        _datas = [NSMutableData new];    }    }#pragma mark- NSURLConnection  get/post异步请回调方法- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{    [_datas appendData:data];        NSString* aStr= [[NSString alloc] initWithData:data   encoding:NSASCIIStringEncoding];        NSLog(@"\n test return resrul:%@",aStr);        self.result.text = aStr;}-(void) connection:(NSURLConnection *)connection didFailWithError: (NSError *)error {        NSLog(@"%@",[error localizedDescription]);}- (void) connectionDidFinishLoading: (NSURLConnection*) connection{        NSDictionary* dict = [NSJSONSerialization JSONObjectWithData:_datas options:NSJSONReadingAllowFragments error:nil];    NSLog(@"请求完成...%@",dict);        }@end




0 0
原创粉丝点击