IOS开发之---网络应用

来源:互联网 发布:linux脚本压缩文件 编辑:程序博客网 时间:2024/04/28 18:24

NSData

Foundation

NSURL/NSURLRequest/NSURLConeection

NSNetService/NSNetServiceBrowser

Core Foundation

CFNetwork

CFNetService

BSD Sockets


[plain] view plaincopy
  1.   
(1)获取图片

[plain] view plaincopy
  1. NSData *data = [[NSData alloc] initWithContentsOfURL:url];  
  2. NSData *data = [NSData dataWithContentsOfURL:url];  

  例子:

[plain] view plaincopy
  1.  NSAutoreleasePool   *pool = [[NSAutoreleasePool alloc] init];  
  2. //根据网络数据,获得到image资源  
  3. NSData  *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:self.picUrlString]];  
  4. UIImage *image = [[UIImage alloc] initWithData:data];  
  5. [data release];  
  6. //回到主线程,显示图片信息  
  7. [self performSelectorOnMainThread:@selector(displayImage:) withObject:image waitUntilDone:NO];  
  8. [image release];  
  9.   
  10. [pool release];  

异步

[plain] view plaincopy
  1. NSURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:url];  
  2. NSURLConnection *urlConnection = [[NSURLConnection alloc] initWithRequest:urlRequest delegate:self];  


(2)GET方法

[plain] view plaincopy
  1. NSURL *url = [NSURL URLWithString:urlString];  
  2. NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:url];  
  3. NSHTTPURLResponse *response = [[NSHTTPURLResponse alloc] init];  
  4. NSData *retData = [NSURLConnection sendSynchronousRequest:theRequest   
  5. returningResponse:&response error:nil];  
  6. NSString *retString = [[NSString alloc] initWithData:retData encoding:NSUTF8StringEncoding];  
(3)post方法

[plain] view plaincopy
  1. NSURL *url = [NSURL URLWithString:urlString];  
  2. NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:url];  
  3. NSString *postString = @"test=3";  
  4. NSData *postData = [postString dataUsingEncoding:NSUTF8StringEncoding];  
  5. NSString *msgLength = [NSString stringWithFormat:@"%d", [postData length]];  
  6. [theRequest addValue:msgLength forHTTPHeaderField:@"Content-Length"];  
  7. [theRequest setHTTPMethod:@"POST"];  
  8. [theRequest setHTTPBody: postData];  
  9. NSHTTPURLResponse *response =[[NSHTTPURLResponse alloc] init];  
  10. NSData *retData = [NSURLConnection sendSynchronousRquest:theRequest returningResponse:&resp
0 0