错误如下:Error Domain=NSCocoaErrorDomain Code=3840。。。。。。。
如果你尝试了很多种方法依然不行,那么可能有一种情况被你忽略了,那就是返回的数据可能有乱码(包括但不限于是编码格式产生的乱码问题,例如:AFN3.0以后用的UTF-8,而返回的数据用的GBK),你指定了json解析但是json解析不出来,这样就会报3840的错误。
如何验证错误是由于乱码造成的呢?需要初始化请求和相应
AFHTTPSessionManager * manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
//在请求成功的回调里:
NSString *responseStr = [[NSString alloc] initWithData:responseObject encoding:NSISOLatin1StringEncoding];
打印一下responseStr,如果有乱码的话就能看到了。
网友评论