修改AFNetworking源文件可接收text/plain和text/html的方法

在使用AFNetworking的时候可能会碰到下面的错误:

{ status code: 200, headers {

"Content-Length" = 14;

"Content-Type" = "text/plain;charset=utf-8";

Date = "Thu, 22 May 2014 10:37:50 GMT";

Server = "Apache-Coyote/1.1";

"Set-Cookie" ="JSESSIONID=C0DFED60A154557F8386E62AB2A066CE; Path=/FHJRDT";

} }, NSLocalizedDescription=Request failed:unacceptable content-type: text/plain}

此时需要修改AFNetworking可接收的Content-Type,前往AFNetworking源代码目录找到AFURLResponseSerialization.m文件将里面的代码:

self.acceptableContentTypes =[NSSetsetWithObjects:@"application/json",@"text/json",@"text/javascript",nil];

修改为:

self.acceptableContentTypes =[NSSetsetWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html",nil];

self.acceptableContentTypes =[NSSetsetWithObjects:@"application/json",@"text/json", @"text/javascript"
,@"text/plain" , nil];

时间: 2024-10-15 11:21:46

修改AFNetworking源文件可接收text/plain和text/html的方法的相关文章

iOS—修改AFNetworking源文件可接收text/plain的方法

iOS—修改AFNetworking源文件可接收text/plain的方法 在使用AFNetworking的时候可能会碰到下面的错误: { status code: 200, headers { "Content-Length" = 14; "Content-Type" = "text/plain;charset=utf-8"; Date = "Thu, 22 May 2014 10:37:50 GMT"; Server =

application/x-www-form-urlencoded multipart/form-data text/plain 后台返回的数据响应的格式类型

application/x-www-form-urlencoded multipart/form-data text/plain 为什么上传文件的表单里要加个属性 enctype  后台返回的数据响应的格式类型 上传文件的表单中<form>要加属性enctype="multipart/form-data",很多人只是死记硬背知道上传表单要这么 写,知其然而不知其所以然.那到底为什么要添加这个属性呢?它是什么意思呢?它又有什么其他可选值呢? 其实form表单在你不写encty

application/x-www-form-urlencoded ,multipart/form-data, text/plain

APPLICATION/X-WWW-FORM-URLENCODED MULTIPART/FORM-DATA TEXT/PLAIN 后台返回的数据响应的格式类型 application/x-www-form-urlencoded multipart/form-data text/plain 为什么上传文件的表单里要加个属性 enctype  后台返回的数据响应的格式类型 上传文件的表单中<form>要加属性enctype="multipart/form-data",很多人只是

AFNetworking 遇到错误 Code=-1016 &quot;Request failed: unacceptable content-type: text/plain&quot;

在开发过程使用了AFNetworking库,版本2.x,先运行第一个官方例子(替换GET 后面的url即可): AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager GET:@"http://example.com/resources.json" parameters:nil success:^(AFHTTPRequestOperation *operatio

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

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

AFNetworking 显示不支持“Content-Type:text/plain”的解决方法

首先来看默认使用:(AFNetworking2.2) 这时出现下列错误: 这个错误是AFNetworking报出的,实际上文件已经上传成功,服务器返回了正确的响应,可用fiddler抓包查看. 默认情况下AFHTTPRequestOperationManager 对返回的数据采取JSON解析,并且会先判断Content-Type的值是不是"text/json",本次文件上传服务器返回的是"text/plain",所以会出现上面的错误.导致success块语句不能执行

application/x-www-form-urlencoded multipart/form-data text/plain 的区别和作用

我们知道在通过POST方式向服务器发送AJAX请求时最好要通过设置请求头来指定为application/x-www-form-urlencoded编码类型.知道通过表单上传文件时必须指定编码类型为"multipart/form-data".而text/plain是我们在做纯文本传输时防止接收数据时出现编码混乱而设置的.可是我一直没有搞清楚为什么要这么设置.后来查了些资料才找到了三者的区别. application/x-www-form-urlencoded 这是通过表单发送数据时默认的

AFN failed: unacceptable content-type: text/plain, com.alamofire.serialization

当用AFN进行网络请求或者上传文件时,响应的报文无法接受.解析.会报如上错误. 那是因为服务器响应格式不被AFN支持,不是AFN操蛋,而是服务器返回格式不常规. 以下是两个解决方法: 1.操蛋的解决方法 AFURLResponseSerialization.m文件 223行: self.acceptableContentTypes = [NSSetsetWithObjects:@"application/json", @"text/html",@"text

text/html与text/plain有什么区别?

MIME是服务器通知客户机传送文件是什么类型的主要方法,客户机浏览器也通过MIME告诉服务器它的参数. 在网上,如果接收到的文件没有MIME头,就默认它为HTML格式.但这样也不好,因为当MIME的包头是text/plain时,浏览器将直接显示而不关心它的什么字体,颜色之类的参数 response.setContentType() 的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据 case "doc": ContentTyp