正文
AFNetworking 报3840
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
工作中遇到前后台交互,前端解析不了后端返回的数据格式 ,原因在于没有标准统一的请求格式
这是个坑,但是还是有办法修复
错误提示:
Error Domain=NSCocoaErrorDomain Code=3840 “JSON text did not start with array or object and option to allow fragments not set.” UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.}
解读: 就是服务器返回的格式 你封装的方法解析不了这个数据类型,返回的数据类型不是json array或array,可能是一个没有键值的数据流或者是字符串
如果你的代码是这样
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
修改代码部分
则需要修改
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
就是后台返回格式不是标准的json格式,可以debug看返回类型 进行判断回调