AFNetworking打印输出服务器返回的错误信息

AFNetworking打印输出服务器返回的错误信息

请求接口时不可避免的会出现一些问题,而正常返回的error数据都是data类型,并不能直观的看出是什么错误信息,给接口的调试增加了难度。记得老版本是可以打印出错误信息的,经过一番查找发现这个可以转变为NSString类型,方法如下:

1、找到AF的AFURLResponseSerialization.m文件在大约第30行处添加代码

#ifdef DEBUG

NSString * const AFNetworkingOperationFailingURLResponseStringErrorKey = @"com.alamofire.serialization.response.error.string";

#endif

见下图



2、再找到(共两处)

mutableUserInfo[AFNetworkingOperationFailingURLResponseDataErrorKey] = data;

并在下面添加代码

#ifdef DEBUG

                mutableUserInfo[AFNetworkingOperationFailingURLResponseStringErrorKey] = [[NSStringalloc]initWithData:dataencoding:NSUTF8StringEncoding];

#endif

见下图




3、使用

在AF请求的错误回调块中(failure)取出error的userInfo,再从userInfo中取出key为@"com.alamofire.serialization.response.error.string"的值即可

猜你喜欢

转载自blog.csdn.net/maolianshuai/article/details/56280524