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.