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看返回类型 进行判断回调

 

posted @ 2019-01-14 15:45 tryFighting 阅读(...) 评论(...) 编辑 收藏