我向Web服務發出請求,但是當我選擇3G連接時,會調用didfailwitherror方法,並顯示錯誤「請求超時」。當連接是wifi時,我得到預期的結果。爲什麼我的網絡服務請求在3G連接上超時? iphone
我正確實現了所有可觸發的方法,但我不知道如何解決這個問題。這是否會發生,因爲反應太大?我也增加了timeoutInterval,但沒有成功。
這是響應:
[{ 「值」: 「1 septembrie - 23 octombrie 2009 」},{「 值」: 「1 septembrie - 30 septembrie 2009」},{ 「值」:「 17 noiembrie - 25 noiembrie 2009「},{」value「:」7 decembrie - 16 decembrie 2009「},{」value「:」22 februarie - 29 martie 2010「},{」value「:」01 8月 - 31 8月2010「},{」value「:」18 octombrie - 30 noiembrie 2010「},{」value「:」14 februarie - 31 martie 2011「},{」value「:」26 aprilie - 29 aprilie 2011「}, 「value」:「29 iunie - 20 iulie 2011」},{「value」:「06 septembrie - 14 septembrie 2011」},{「value」:「10 octombrie - 2011年11月06日」},{「value」 7 decembrie - 31 decembrie 2011「},{」value「:」15 februarie - 30 martie 2012「},{」value「:」5 aprilie - 9 mai 2012「},{」value「:」05 noiembrie 2012「} ,{「value」:「05 noiembrie - 22 noiembrie 2012 「},{」 值」: 「23 noiembrie - 06 decembrie 2012」},{ 「值」: 「03 decembrie - 28 decembrie 2012」}]
下面是代碼:
NSURL * url = [NSURL URLWithString:[NSString stringWithFormat:@"%@api-v2.asmx", MainUrl]];
NSMutableURLRequest * request = [NSMutableURLRequest requestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:50.0];
NSString * parameters = [[NSString alloc] initWithString:[self XmlRequest]];
NSLog(@"Request=%@", parameters);
NSString * msgLength = [NSString stringWithFormat:@"%d", [parameters length]];
[request addValue:@"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request addValue:@"http://tempuri.org/GetIndexLinkedTable" forHTTPHeaderField:@"SOAPAction"];
[request addValue:msgLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:[parameters dataUsingEncoding:NSUTF8StringEncoding]];
NSURLConnection * connection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];
if (connection){
self.responseData = [NSMutableData data];
}
}