수정할 수있는 허용 된 http 상태 코드 목록이 있지만 실패 블록에서 http 상태 코드를 얻을 수 있다면 더 깨끗할 것이라고 생각합니다.
좋아, 작업 객체로 답을 찾았습니다.
failure:^(AFHTTPRequestOperation *operation, NSError *error){
NSLog(@"error code %d",[operation.response statusCode]);
}];
수정할 수있는 허용 된 http 상태 코드 목록이 있지만 실패 블록에서 http 상태 코드를 얻을 수 있다면 더 깨끗할 것이라고 생각합니다.
좋아, 작업 객체로 답을 찾았습니다.
failure:^(AFHTTPRequestOperation *operation, NSError *error){
NSLog(@"error code %d",[operation.response statusCode]);
}];
답변:
좋아, 작업 객체로 답을 찾았습니다.
failure:^(AFHTTPRequestOperation *operation, NSError *error){
NSLog(@"error code %d",[operation.response statusCode]);
}];
NSInteger operationStatusCode = [operation.error 코드];
NSInteger httpStatusCode = operation.response.statusCode;
요청이 취소 / 연결 불가능 / 시간 초과 된 httpStatusCode
경우 항상 0
입니다.
또는을 이해하여 문제를 식별 할 수 있습니다 operationStatusCode
. 그것은이다 NSError
개체입니다.
operationStatusCode
되거나 네트워크가 없으면이 됩니다 -1009
.operationStatusCode
있을 것입니다 -999
.다른 모든 NSError
코드와 설명은 Apple 문서 에서 확인할 수 있습니다.
그것은 나를 위해 일합니다 귀하의 요청에 아래 줄을 추가하십시오
manager.requestSerializer = [AFJSONRequestSerializer 시리얼 라이저];
[operation.request HTTPMethod]