2010-05-03 1 views
1
NSData *data = [[NSData alloc] initWithContentsOfURL:url]; 

URL은 NSURL이며 제대로 작동합니다. 그러나 로그인 한 후 HTML (데이터)을 가져오고 싶습니다.로그인해야하는 웹 사이트 (iphone)에서 HTML 소스 (NSData) 가져 오기

그래서 웹 사이트에는 2 개의 텍스트 상자와 양식에 대한 제출 작업으로 로그인하는 표준 방법이 있습니다.

그래서 어떻게 내가 그것을 구문 분석 할 수 있도록 HTMl 소스에 로그인 할 수 있습니다. NSData 이외의 다른 것을 사용해야합니까?

+0

같은 가능성이 귀하의 질문에 대한 대답 : http://stackoverflow.com/questions/1005521/iphone-nsdata-nsurl-with-cookie –

답변

1

NSURLConnection을 사용하여 POST를 통해 양식을 제출하고 싶습니다. 양식에 맞게이를 조정해야하지만, 그것이 있어야

NSString *reqURL = [NSString stringWithFormat:@"%@/login",SERVER_URL]; 

    NSMutableURLRequest *req = [[NSMutableURLRequest alloc]initWithURL:[NSURL URLWithString:reqURL]]; 
    [req setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"]; 


    NSData *myRequestData = [NSData dataWithBytes:[@"username=whatever&password=whatever" UTF8String] length: [@"username=whatever&password=whatever" length]]; 
    [req setHTTPMethod: @"POST"]; 
    [req setHTTPBody: myRequestData]; 
    NSData *returnData = [NSURLConnection sendSynchronousRequest:req returningResponse: nil error: nil]; 
    NSString *html = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];