2013-08-13 2 views
-1

sendAsynchronousRequest 메서드를 사용하여 비동기 요청을 보내면 'invalid username'과 같은 오류 시나리오에서 null 응답이 반환됩니다. API에서 해당 JSON 값을 사용하여 오류 시나리오에서 응답을 보냅니다.NSURLConnection sendAsynchronousRequest 오류 시나리오에서 null 응답을 반환합니다.

JSON을 수신하지만 url 응답이 null입니다.

적절한 위임 방법을 사용하여 connectionWithRequest : 메소드에서이 작업을 수행하면 올바르게 작동합니다.

도움을 주시면 감사하겠습니다.

감사합니다.

[NSURLConnection sendAsynchronousRequest:request 
            queue:[[NSOperationQueue alloc] init] 
         completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) { 
              NSLog(@"%@", (NSHTTPURLResponse *)response); 
             }]; 
+0

응답 상태 코드를 인쇄하셨습니까? – NHS

+1

은 response.statuscode와 같이 responseecode를 인쇄하고 [error localizedDescription] – NHS

+0

@NHS - 응답 상태 코드는 0이고 오류 설명은 "작업을 완료 할 수 없습니다 (NSURLErrorDomain 오류 -1012)"입니다. – Jayaprakash

답변

0

예상되는 동작입니다.

스트레이트 상기 방법의 문서에서 : 요청이 실패

경우, 상기 데이터는 파라미터이고 nil 에러 파라미터는 실패에 대한 정보를 포함한다.

+0

'서버 오류 또는 오프라인 등으로 인해 요청이 실패했습니다'와 달리 '잘못된 사용자 이름'과 같은 의미에서 '오류 시나리오'에 대해 언급했습니다. 나는 'errormessage'와 같은 오류에 대한 정보 (JSON)와 NSError도 포함 된 데이터를 받았다. 그래서 나는 요청이 성공 하리라 생각했지만 url 응답은 'null'로 출력된다. – Jayaprakash

관련 문제