Veo que hay una lista de códigos de estado http aceptados que puedo modificar, pero creo que sería más limpio si pudiera obtener el código de estado http en el bloque de fallas.
Ok, encontré la respuesta con el objeto de operación
failure:^(AFHTTPRequestOperation *operation, NSError *error){
NSLog(@"error code %d",[operation.response statusCode]);
}];
afnetworking
MonoBonkey
fuente
fuente
[operation.request HTTPMethod]
En las versiones más recientes de AFNetworking, puede recuperar el objeto de respuesta del error:
Esto es útil si está haciendo un manejo de errores más arriba en la línea y no quiere pasar el objeto de respuesta.
fuente
NSError *underlyingError = error.userInfo[@"NSUnderlyingError"]
Para AFNetworking 3.0 , utilice
fuente
Si las solicitudes fueron canceladas / inaccesibles / timeout,
httpStatusCode
será siempre0
.Alternativamente, puede identificar el problema entendiendo el
operationStatusCode
. Es unNSError
Objeto.operationStatusCode
será-1009
.operationStatusCode
, será-999
.Puede consultar todos los demás
NSError
códigos y sus descripciones en la documentación de Applefuente
Pude obtener el código de estado con Swift 3:
fuente
Es un trabajo para mí Agregue la siguiente línea a su solicitud
manager.requestSerializer = [serializador AFJSONRequestSerializer];
fuente