2011-02-08 4 views
9

Я отправляю http-запрос от iOS (iPad/iPhone) на мой сервер движков Google на Python, используя классы и NSURLRequest.Как проверить код состояния ответа HTTP-запроса от iOS?

Как узнать статус ответа, т. Е. Значение, установленное движком приложения, например, с помощью response.set_status(200, message="Success")?

Я не могу найти, где я могу прочитать эти коды состояния, как только я получу звонок делегата connectionDidFinishLoading на стороне клиента.

+0

возможно дубликат [Извлечь HTTPResponse/HTTPRequest кодов состояния iPhone SDK?] (Http://stackoverflow.com/questions/917932/retrieve-httpresponse-httprequest- status-codes-iphone-sdk) –

ответ

15

Метод делегата connection:didReceiveResponse: вызывается при получении ответа, который дает вам NSURLResponse.

Если вы сделали HTTP-запрос, это будет фактически объект NSHTTPURLResponse, который имеет метод statusCode.

16

Если вы отправляете синхронный запрос, вы можете получить код ответа из NSHTTPURLResponse.

NSHTTPURLResponse *response = nil; 
NSError *error = nil; 

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:URL_LOGIN]]; 
NSData *respData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 
NSLog(@"~~~~~ Status code: %d", [response statusCode]); 

Надеется, что это поможет :)

+0

Это помогло мне, спасибо! – Fengson