iOS上的http请求:post方法

 1     NSString * URLString = @"www.baidu.com";  2     NSURL * URL = [NSURL URLWithString:[URLString stringByAddingPercentEscapesUsingE ncoding:NSUTF8StringEncoding]];   

 4     NSString * postString = @"theRegionCode=湖南";  5     NSData * postData = [postString dataUsingEncoding:NSUTF8StringEncoding];  //将请求参数字符串转成NSData类型    

 7     NSMutableURLRequest * request = [[NSMutableURLRequest alloc]init];  8     [request setHTTPMethod:@"post"]; //指定请求方式

 9     [request setURL:URL]; //设置请求的地址

10     [request setHTTPBody:postData];  //设置请求的参数

11      

12     NSURLResponse * response; 13     NSError * error; 14     NSData * backData = [NSURLConnection sendSynchronousRequest:request returningRes       ponse:&response error:&error];      

16     if (error) { 17         NSLog(@"error : %@",[error localizedDescription]); 18     }else{ 19         NSLog(@"response : %@",response); 20         NSLog(@"backData : %@",[[NSString alloc]initWithData:backData encoding:NSUTF 8StringEncoding]); 21     }

 

 post方式的时候参数是放在HTTPBody里面的,而且需要将字符串转码成响应的NSData类型,在接口文档里一般都有指出转码方式,需要按指定方式转码,这里的UTF8,也有gb2312的。request构建好了之后,和get方法一样使用NSURLConnection请求数据。

 

 

 

你可能感兴趣的:(http)