내 iPhone 응용 프로그램과 함께 NSURL, NSURL [Mutable] Request, NSURLConnection으로 큰 성공을 거두었습니다. 스탠드 얼론 코코아 애플리케이션을 컴파일 할 때 간단한 HTTP 요청을하기위한 10 라인 프로그램 인 경우 컴파일러 오류 또는 경고가 없습니다. 프로그램은 잘 컴파일되지만 HTTP 요청은 웹 서버에 보내지지 않습니다 (저는 tcpdump를 실행하고 아파치 로그를 병렬로 보면서). 아이폰 앱에서 매우 비슷한 코드를 실행하면, 기본적으로 복사/붙여 넣기가 악의처럼 작동합니다.코코아 : NSURLConnection이 HTTP 요청을 시도하지 않음
단순화를 위해이 코드 조각에서 NSURLConnection에 대한 대리인의 'obj'선언 코드를 보관했습니다. 또한 GCC에 다음을 전달 해요 :
의 gcc -o foo는 foo.m -lobjc -framework 코코아
덕분에 어떤 통찰력.
#import <Cocoa/Cocoa.h>
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSString * urlstr = @"http://tmp/test.php";
[NSApplication sharedApplication];
NSObject *obj = [[NSObject alloc] init];
NSURL *url = [NSURL URLWithString: urlstr];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
if([request isKindOfClass:[NSMutableURLRequest class]])
NSLog(@"request is of type NSMutableURLRequest");
[request setHTTPMethod:@"GET"];
[request setCachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData];
NSURLConnection *connection = [[NSURLConnection alloc]
initWithRequest:request
delegate:obj
startImmediately:YES];
if(connection)
NSLog(@"We do have a connection.");
[pool release];
return 0;
}
그런데 objc 라이브러리에 링크 할 필요없이 ... 코코아 프레임 워크에 추가됩니다. –