나는 Objective-c를 처음 접했고 최근부터 요청 / 응답에 많은 노력을 기울이기 시작했습니다. http GET을 통해 URL을 호출하고 반환 된 json을 구문 분석 할 수있는 작업 예제가 있습니다.
이것의 작동 예는 다음과 같습니다.
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
[responseData setLength:0];
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
[responseData appendData:data];
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
NSLog([NSString stringWithFormat:@"Connection failed: %@", [error description]]);
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
[connection release];
//do something with the json that comes back ... (the fun part)
}
- (void)viewDidLoad
{
[self searchForStuff:@"iPhone"];
}
-(void)searchForStuff:(NSString *)text
{
responseData = [[NSMutableData data] retain];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.whatever.com/json"]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];
}
내 첫 번째 질문은-이 접근 방식이 확장 될까요? 또는 비동기가 아닙니다 (앱이 응답을 기다리는 동안 UI 스레드를 차단 함을 의미).
두 번째 질문은-GET 대신 POST를 수행하기 위해 요청 부분을 어떻게 수정할 수 있습니까? 단순히 HttpMethod를 그렇게 수정하는 것입니까?
[request setHTTPMethod:@"POST"];
마지막으로-이 게시물에 json 데이터 세트를 간단한 문자열 (예 :)로 추가하는 방법
{
"magic":{
"real":true
},
"options":{
"happy":true,
"joy":true,
"joy2":true
},
"key":"123"
}
미리 감사드립니다