iphone ios http restkit

iphone - RestKit: Obtener el código de estado HTTP cuando falla una solicitud



ios (3)

Estoy usando RestKit en una aplicación de iOS y necesito tener un manejo especial para ciertos códigos de error HTTP. ¿Cómo se puede verificar el código de estado HTTP de la respuesta dentro de la request:didFailLoadWithError: :? ¿Hay alguna entrada en el diccionario de información de NSError de NSError ?

No pude encontrar nada en la documentación de RKRequestDelegate .

Aquí está la interfaz para el método de delegado:

- (void)request:(RKRequest *)request didFailLoadWithError:(NSError *)error


La propiedad statusCode encontrada en RKResponse funciona para mí:

- (void)objectLoader:(RKObjectLoader*)objectLoader didFailWithError:(NSError*)error { switch ([[objectLoader response] statusCode]) { case 409: ... }


Para las personas que usan la nueva versión de RESTkit y objectManager, puede obtener el código de estado de RKObjectRequestOperation :

operation.HTTPRequestOperation.response.statusCode


Resulta que didFailLoadWithError: no se llama para errores HTTP. La request:didLoadResponse: método todavía se llama para errores HTTP, por lo que la respuesta (y por lo tanto los códigos de estado) están disponibles.