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

首先来看默认使用:(AFNetworking2.2)

这时出现下列错误:

这个错误是AFNetworking报出的,实际上文件已经上传成功,服务器返回了正确的响应,可用fiddler抓包查看。

默认情况下AFHTTPRequestOperationManager
对返回的数据采取JSON解析,并且会先判断Content-Type的值是不是"text/json",本次文件上传服务器返回的是“text/plain”,所以会出现上面的错误。导致success块语句不能执行,获取不到responseObject数据。

解决的办法很简单:加上一句:manager.responseSerializer =
[[AFCompoundResponseSerializer alloc] init]
;

加上这一句之后,AFNetworking将不会对返回的responseObject数据做任何序列化,是原始的NSData数据类型。

当然你可以使用 operation.responseString 直接获取NSString类型的结果。

由于是初次使用,本人在网上找了很多资料,此问题都没有得到解决,有人说改源码,加上“text/plain”,但在此版本中不管用。

无赖只得去看源码,AFNetworking源码说得很清楚,默认是JSON序列化,还提供了解析plist
、xml的方法,并且可以自定义序列化,就是上面加上的那一句。

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

时间: 2024-10-07 15:32:31

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

postman测试接口报Content type 'text/plain;charset=UTF-8' not supported解决方法

增加一个请求头管理器,添加content-type:application/json.并将请求修改为json数据传输试试. 参考:https://zhidao.baidu.com/question/1644957725975214740.html postman测试接口报Content type 'text/plain;charset=UTF-8' not supported解决方法 原文地址:https://www.cnblogs.com/xiaoni-fighting/p/12298436.

Chrome 报 Resource interpreted as Script but transferred with MIME type text/plain 警告的解决办法

http://www.2cto.com/os/201312/262437.html 安装了VS2012之后,chrome在加载页面的时候会报 Resource interpreted as Script but transferred with MIME type text/plain 的警告. 这是因为VS2012在安装的时候改了windows的注册表,将解析javascript的类型标示改成了text/plain,导致javascript被转换成了text/plain格式,但这并不影响jav

发邮件抛异常。no object DCH for MIME type text/plain; charset=UTF-8

在进行发邮件的时候抛出的这个异常: IOException while sending message; nested exception is: javax.activation.UnsupportedDataTypeException: no object DCH for MIME type text/plain; charset=UTF-8 检查在站点的lib文件夹下和在tomcat的common的lib下边是不是同时存在mail.jar and activation.jar,没有的话加进

springBoot+thymeleaf遇到Resource interpreted as Stylesheet but transferred with MIME type text/plain

如果你在项目中使用了拦截器,那么你的拦截器配置就应该排除拦截css静态资源,如下图所示: 这样浏览器控制台上就不会出现Resource interpreted as Stylesheet but transferred with MIME type text/plain提示了,页面也能恢复正常了. 原文地址:https://www.cnblogs.com/JerryTomcat/p/11721258.html

编绎显示Unknown type name “CGFloat” 错误解决方法

一.编绎显示Unknown type name "CGFloat"  错误解决方法   将Compile Sources As 改为 Objective-C 二.如果是extern const引起的.直接加头文件 #import <UIKit/UIKit.h>

Visual Studio 打开解决方案后 弹出框显示 &quot;正在打开文件...&quot; 迟迟没反应 的解决方法

Visual Studio 打开解决方案后 弹出框显示 "正在打开文件...",任务管理器的devenv进程又很正常,不会显示"未响应". 而IDE的左下角有个 "正在等待分析完成..." 提示. 刚开始,我以为是VS插件问题,因为我刚安装了一个插件后,重启VS,打开解决方案就出现这个问题了,所以我以为是VS插件问题. 后来我把VS插件通通卸载了,把/ResetAddin /ResetSkipPkgs /ResetSettings 之类的deve

“网站内容可以显示但在页面底部提示错误”的解决方法

“网站内容可以显示但在页面底部提示错误”的解决方法 今天阿D遇到一个问题,客户网站内容可以正常访问,但是网站尾部都出现数据库等一大推错误提示,如下图 起初以为是网站权限问题,设置好权限,还是提示这个错误,然后又去纠结数据库文件和数据库配置文件是否修改好,都检查无误,依旧提示这个错误,最后根据那个warning的路径,发现tplcache 下好多缓存文件,然后把这些在这个目录下新建个目录,把所有缓存文件拖进新建的那个目录,再次访问,就正常了 总结:网站可以正常打开,多了一堆后缀,首先要去看错误提示

head标签中的title,link,meta等的元素错位显示到body里面去了的完美解决方法

问题展现就像上图所示,head中什么都没有,head中的标签全部错位到body中显示,在页面的直观表现就是无故多处一行空白,很多人觉得这是编码者没有写好闭合标签的问题,嗯,是有可能,但不说现在的浏览器大都能自动补全未闭合标签,未写闭合标签也不至于让head中的内容完全移步到body中去吧.... 解决方法: 这个问题其实是由编码格式引起的,没错,就是BOM的问题,选一个比较高级的编辑器,个人推荐Notepad++,打开后选择 格式 选择以无BOM格式编码保存文档,然后就可以了. 嗯,就是这样子,

win8.1不支持交行满金宝的解决方法

自从用了win8.1以后,一直被一个问题困扰,就是满金宝不能运行了.如图,程序会无响应.虽然国内外汇保证金平台做的都不好,但是相对而言,满金宝还是不错的,这里就不替他们做免费广告了. 投诉了几次,今天终于得到交行官方的说法,由于是满金宝是外挂,所以目前不支持win8系统,最好是使用XP系统! 无奈,只能通过虚拟机的方式解决了,经过各种虚拟机工具的比较和安装,最终还是选用了VM方案,过程中,还碰到usbkey无法读取的问题,后来都解决了.参见 <X240安装虚拟机无法读取USB设备,返回error