NSURLSession 간편하게 사용하기
NSURLConnection 이 deprecate되면서 이걸사용해야한다
간단하게 사용하는 코드다
//헤더및 데이터 설정
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString: @"요청URL"];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
if( [APPDELEGATE.kUserAgent length] > 0 ){
[request setValue:@"유저에이전트" forHTTPHeaderField:@"User-Agent"];
}
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
//실제로 통신부분
NSURLSessionConfiguration *sessionConfiguration = [NSURLSessionConfiguration defaultSessionConfiguration];
sessionConfiguration.timeoutIntervalForRequest = self.timeoutTime;
session = [NSURLSession sessionWithConfiguration:sessionConfiguration delegate:nil delegateQueue:nil];
NSURLSessionDataTask *task = [session dataTaskWithRequest:request completionHandler:
^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
LOG(@"fail Networking...");
return;
}
if ([response isKindOfClass:[NSHTTPURLResponse class]]) {
NSLog(@"Response HTTP Status code: %ld\n", (long)[(NSHTTPURLResponse *)response statusCode]);
NSLog(@"Response HTTP Headers:\n%@\n", [(NSHTTPURLResponse *)response allHeaderFields]);
NSLog(@"Response HTTP Headers:\n%@\n", [(NSHTTPURLResponse *)response textEncodingName]);
}
}];
[task resume];