레코드를 얻기 위해 서버에 요청 (MySql Query in XML)을 보내고 있습니다.NSURLConnection sendSynchronousRequest의 이상한/위증한 동작
모든 것이 예상대로 완벽하게 작동합니다. 나는 2 개월 이래로 기록을 얻는이 방법을 사용하고있다. 어제 나는 이상한 문제에 직면했다.
나는 WiFi 설정을 다음과 같이 differnt 벤더 (인터넷 공급자 회사)에서 두 개의 인터넷 연결을 가지고있다. 액세스 SECOND 인터넷 연결 NSWRLConnection 요청은 서버에서 수신되지 않고 응용 프로그램에서 응답하지 않습니다. 난 그냥 테스트 단계에서 중단 점을 넣고 모든 코드가 컴파일되고 있는지 확인합니다. 그러나 nil Respose. 나는 다시 다시 FIRST 인터넷 연결 및 에 서버로 전송 없음 요청 및 응답이 문제 될 수있다 이것이 모두가 일어나는 이유는
One Important thing is that, In this testing Period Since Yesterday,
Three times the Request is sent to Server and I Got Response.
를, 와이파이 설정을 변경하지
...? ??
이 문제는 인터넷 가용성이 아닐 수 있습니다. 나는 브라우징하고 인터넷이 완벽하게 작동하는 모든 시간을 확인합니다.
오늘 나는 XCode를 끝내고 다시 시작하고 첫 번째 인터넷 연결을 사용합니다. 이제 모든 것이 완벽하게 다시 작동합니다.
이번에도 문제는 무엇입니까 ... ???
이것은 서버에서 요청을 보내고 응답을 받기 위해 사용하는 코드입니다.
NSString *message = @"XML Contains MySql Query";
NSError *error;
NSURLResponse *response;
NSURL *uRL = [NSURL URLWithString:@"http://xxxxxxxxxxxxxx"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:uRL];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:[message dataUsingEncoding:NSUTF8StringEncoding]];
NSData *xmldata = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error: &error];
if (xmldata == nil)
{
NSLog(@"response: %@", response);
NSLog(@"error: %@", error);
}
NSString *data = [[NSString alloc] initWithData:xmldata encoding:NSASCIIStringEncoding];
이
연결이 시간 초과 될 수 있기 때문에 내가response: (null)
error: Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost."
UserInfo=0x7a6bafa0 {NSErrorFailingURLStringKey=http:/xxxxxxxx, _kCFStreamErrorCodeKey=57,
NSErrorFailingURLKey=http://xxxxx, NSLocalizedDescription=The network connection was lost.,
_kCFStreamErrorDomainKey=1, NSUnderlyingError=0x7a7ddb80 "The network connection was lost."}
난 당신이'sendSynchronousRequest 상'error' 변수를 제공하지 않는 것을 알 수'요청을하고, 따라서 오류를 검토하지. 'error' 변수를 추가하고'xmldata'가'nil' 일 때'NSLog()'를 추가 한 다음 전체 오류 메시지를 질문에 추가하십시오. 항상 오류를 확인하고 오류 변수를 제공하십시오. – zaph
@Zaph가 변경되었지만 NSLog에서 오류가 null ... –
@Zaph ... 이것이 Erroe를 확인하는 올바른 방법입니까? ??? –