2012-03-21 67 views

回答

1

當然。檢查出URL Loading System Programming Guide。從該鏈接:

的URL裝載系統提供了使用以下協議訪問的資源支持:

  • 文件傳輸協議(ftp://
  • 超文本傳輸​​協議(http://
  • 安全的128位超文本傳輸​​協議(https://
  • 本地文件URL(file:///
1

絕對!使用NSURLConnection對象。使用類似下面的函數,只需傳遞一個空的字符串'數據',然後解析返回的HTML以找到您要查找的值。

-(void)sendData:(NSString*)data toServer:(NSString*)url{ 
    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES; 
    NSData *postData = [data dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]; 
    NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]]; 
    NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 
    [request setURL:[NSURL URLWithString:url]]; 
    [request setHTTPMethod:@"POST"]; 
    [request setValue:postLength forHTTPHeaderField:@"Content-Length"]; 
    [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Current-Type"]; 
    [request setHTTPBody:postData]; 
    NSURLConnection *conn = [[NSURLConnection alloc]initWithRequest:request delegate:self]; 
    if(conn){ 
     //Connection successful 
    } 
    else{ 
     //Connection Failed 
    } 

    [conn release]; 
} 
1

更簡單的方法尚未使用線程:

- (void)viewDidLoad 
{ 
    [self contentsOfWebPage:[NSURL URLWithString:@"http://google.com"] callback:^(NSString *contents) { 
     NSLog(@"Contents of webpage => %@", contents); 
    }]; 

    [super viewDidLoad]; 
    // Do any additional setup after loading the view. 
} 

- (void) contentsOfWebPage:(NSURL *) _url callback:(void (^) (NSString *contents)) _callback { 
    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0); 

    dispatch_async(queue, ^{ 

     NSData *data = [NSData dataWithContentsOfURL:_url]; 

     dispatch_sync(dispatch_get_main_queue(), ^{ 

      _callback([[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]); 

     }); 

    }); 
} 
相關問題