2011-09-10 6 views
1

요청 (SOAP 웹 서비스)을 수행하고 응답 시간이 매우 느립니다 (아래 로그 참조).
NSURLConnection을 사용하여 다운로드 속도가 느림

이 문제는 장치 및 시뮬레이터에서 모두 발생합니다.
그러나 cURL 또는 SoapUI를 사용하여 동일한 요청을 수행하면 호출이 1 초 내에 완료됩니다.
이 문제의 원인은 무엇입니까?

코드

NSString *msgLength = [NSString stringWithFormat:@"%d", [soapRequest length]]; 

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];    
[request addValue:@"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];  
[request addValue:msgLength forHTTPHeaderField:@"Content-Length"]; 
[request setHTTPMethod:@"POST"];  
[request setHTTPBody:[soapRequest dataUsingEncoding:NSUTF8StringEncoding]]; 
connection = [[NSURLConnection alloc] initWithRequest:request delegate:self]; 

시뮬레이터 로그

00:58:31.727 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:32.858 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:33.979 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[5760] 
00:58:35.106 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[8640] 
00:58:36.130 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:38.287 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:40.430 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:41.762 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:42.273 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:42.274 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:45.243 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:46.532 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[1440] 
00:58:48.008 [WSClient connection:didReceiveData:] [Line 109] |NETWORK| Received data. Size[428] 
00:58:48.010 [WSClient connectionDidFinishLoading:] [Line 121] |NETWORK| Done 

답변

0

나는 당신의 즉각적인 질문에 대답 할 수 없다. 어쩌면 델리게이트 핸들러와 관련이 있을지도 모릅니다. 그것들을 게시하는 것을 도울지도 모른다.

어쨌든 ASIHTTPRequest에게 관심을 보이고 싶었습니다. 널리 사용되는 인기있는 대안이며 인생을 편하게 만듭니다.

+0

대리인이 수행하는 유일한 작업은 [myData appendData : data]입니다. – Egil

관련 문제