AFNetworking 关于JSON text did not start with array or object and option to allow fragments not set 错误修改方法

这是因为 AFNetworking默认把响应结果当成json来处理,(默认manager.responseSerializer = [AFJSONResponseSerializer serializer]) ,很显然,我们请求的百度首页 返回的并不是一个json文本,而是一个html网页,但是AFNetworking并不知道,它坚信请求的结果就是一个json文本!然后固执地以json的形式去解析,显然没办法把一个网页解析成一个字典或者数组,所以产生了上述错误.

然而,我们期望它能够正确地处理这个情形,而不是提示一个错误. 
这时候 你必须告诉AFNetworking:别把这个网页当json来处理! 
只需要在发送请求前加入:manager.responseSerializer = [AFHTTPResponseSerializer serializer]

 

时间: 2024-10-31 13:20:10

AFNetworking 关于JSON text did not start with array or object and option to allow fragments not set 错误修改方法的相关文章

AFNetworking 不支持 text/plain,unacceptable content-type: text/plain

1. 用AFNetworkingPOST传递参数(获取微博的accessToken)的时候,具体代码如下: AFHTTPSessionManager *session = [AFHTTPSessionManager manager]; NSMutableDictionary *parameters = [NSMutableDictionary dictionary]; parameters[@"client_id"] = @"3113926977"; paramet

iOS开发-使用第三方库AFNetWorking解析JSON和XML数据

利用第三方库AFNetWorking解析网络请求的JSON和MXL数据具有很多方便的地方. 第三方库的下载地址:https://github.com/AFNetworking/AFNetworking 导入的包和宏定义 1 #import "ViewController.h" 2 #import "AFNetworking.h" 3 #import "GDataXMLNode.h" 4 5 //json地址 6 #define kJSONUrlS

新浪微博数据挖掘食谱之四: 保存篇 (json text格式)

#!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-12-31 @author: beyondzhou @name: json_data_text.py ''' # Get public timeline of sina weibo and save json response data into text file def json_data_text(): # import from login import weibo

AFNetWorking传递json数组

在使用AFNetWorking的时候 有时候会遇到要传递一个数组到服务器,这时候传递JSON就比较方便了 NSError *jsonError; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:#你的数据源数组# options:NSJSONWritingPrettyPrinted error:&jsonError]; NSString *jsonString = [[NSString alloc] initWithData:

afnetworking 得到json数据

Afnetwork get json 按照官方教程获取了几个网上的免费json都不成功,发现acceptable contenttype 问题,修改好了 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/plain"

使用AFNetWorking读取JSON出现NSCocoaErrorDomain Code=3840的解决方法

最近在使用AFNetworkWorking读取JSON时,出现了NSCocoaErrorDomain Code=3840的错误.这种错误应该是服务器端返回JSON格式不对造成的.通过Google搜到这篇文章印证了我的猜想.链接 如下图 解决方案如下: 这样就可以将服务器端不完整的json就可以显示出来了.

iOS AFNetWorking 请求json数据

1.请求json数据,使用AFHTTPRequestOperation完成     NSString *str=[NSString stringWithFormat:@"http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=218.4.255.255"];          NSURL *url = [NSURL URLWithString:[str stringByAddingPercentEsca

未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed”或它的某一个依赖项 解决方法

在webconfig中加入这段话就可以了 <runtime>    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">      <dependentAssembly>        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" cult

json数组作为参数传递给java时候object问题

解决方案是json数组直接作为参数传给后台的时候会被转化为Object,而在java中得不到想要的list数据, 利用函数将object转换成string字符串再作为参数,在java端用request.getParameterMap();然后用JSONObject.fromObject(paramMap);转成JSONObject,就类似于map就可以得到相应的参数 http://www.worlduc.com/blog2012.aspx?bid=1023161http://www.worldu