Http 请求

同步方式

1,使用NSString

NSString* str = [NSString stringWithContentsOfURL:[NSURL URLWithString:@"http://baidu.com"] encoding:NSUTF8StringEncoding error:nil];

2, 使用NSData

NSData* data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://baidu.com"]];

3,使用NSURLRequest &NSURLConnection

	NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://baidu.com"]];
	NSHTTPURLResponse* response = nil;									
	NSData* responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
	NSDictionary* headArr = [response allHeaderFields];
	NSLog(@"%@",headArr);

headArr的输出如下:  

{
    "Accept-Ranges" = bytes;
    "Cache-Control" = "max-age=86400";
    Connection = "Keep-Alive";
    "Content-Length" = 81;
    "Content-Type" = "text/html";
    Date = "Thu, 15 Mar 2012 08:11:50 GMT";
    Etag = "\"51-4b4c7d90\"";
    Expires = "Fri, 16 Mar 2012 08:11:50 GMT";
    "Last-Modified" = "Tue, 12 Jan 2010 13:48:00 GMT";
    Server = Apache;
}


[response statusCode] 可以得到http 返回值,比如200表示成功。

4.使用NSURLRequest &NSURLConnection 设置超时时间

	
	//[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://kkkkkkk.com"] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:3.0];	
NSMutableURLRequest* request   = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://kkkkkkk.com"]];
	NSURLResponse* response = nil;
	[request setTimeoutInterval:4.0];
	NSData* data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];





异步方式:

1,使用NSURLRequest &NSURLConnection

	NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://xxxx"]];
	NSHTTPURLResponse* response = nil;		
	[request setHTTPMethod:@"POST"];
	[request setHTTPBody:@"post Body Data"];
	NSString *contentType = [NSString stringWithFormat:@"multipart/form-data;"];
	[request addValue:contentType forHTTPHeaderField: @"Content-Type"];
	NSURLConnection* conn = [NSURLConnection connectionWithRequest:request delegate:self];
对应的需要实现对应的回调函数

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response;

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data ;

- (void)connectionDidFinishLoading:(NSURLConnection *)connection ;

- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error ;



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值