iPhone NSURLRequest 사용법 iPhone

/* 

아래 같은 방식으로 smsURL이라는 주소로 post 형식으로 데이터를 감싸 전송이 가능해진다.

*/

- (void)connectToServer

{

NSString *smsURL = @"http://www.google.co.kr";

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];

NSString *post = [NSString stringWithFormat:@"password=%@&id=%@",@"password",@"id"];

NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];

NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]];

[request setURL:[NSURL URLWithString:smsURL]];

[request setHTTPMethod:@"POST"];

[request setValue:postLength forHTTPHeaderField:@"Content-Length"];

[request setValue:@"Mozilla/4.0 (compatible;)" forHTTPHeaderField:@"User-Agent"];

[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];

[request setHTTPBody:postData];


[NSURLConnection connectionWithRequest:request delegate:self ];

}


/*

아래 Delegate에서는 HTML이 처리되고 난 후 받는 데이터를 얻을 수 있다.

*/

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

{

NSString *returnString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

NSLog(returnString);

}


/* 

아래 Delegate를 이용하면 post를 보낸 후 쿠키를 얻을 수 있다.

*/

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)aResponse

{

NSHTTPCookie *cookie;

int i=0;

for (cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies])

{

NSLog([cookie description]);

}

}


핑백

  • 아이폰 개발시 중요 참고 사이트 « SIMBOYZ 2011-05-02 13:10:31 #

    ... r/ : 아이군의 블로그 http://iphoneos.co.kr/ : Korea iOS Developer Group 의 HTTP/HTTPS 통신 http://fmttm.egloos.com/4324991 : iPhone NSURLRequest 사용법 POST 전송 방식 http://www.iphonesdkarticles.com/2009/0 ... more

덧글

  • SLASH 2010/03/18 19:41 # 삭제 답글

    계속 찾고있떤 정말 유용한 자료입니다. 이 글을 보게 된게 행운이네요!^^
  • bluebear 2010/12/29 06:03 # 답글

    저도 찾고 있던 유용한 자료입니다.
    좋은 정보 제공해 주셔서 고맙습니다. ^^
  • jongnam 2011/03/01 19:46 # 삭제 답글

    유용한 정보 감사합니다.
  • 팔팔청춘 2011/04/30 04:18 # 삭제 답글

    좋은 정보 감사드립니다^^

    그런데 왜 WiFif로 할땐 디바이스(iPhone)에서 서버로 전송이 잘되는데

    3G로 하면 전송이 안되는 걸까요 ???
  • FMTTM 2011/05/06 16:19 # 답글

    글쎄요?? 거기에 관한건 확실하게 알 수가 없네요.
    3g 정상동작인지 확인후 해보시면 될 것 같습니다. 저는 동작했었거든요.
댓글 입력 영역


Google Analysis