AFN解析器里的坑

AFN框架是用来用来发送网络请求的,它的好处是可以自动给你解析JSON数据,还可以发送带参数的请求
AFN框架还可以监测当前的网络状态,还支持HTTPS请求,分别对用的类为AFNetworkReachabilityManager,AFSecurityPolicy

虽然AFN可以发送请求,但是里面有许多坑,
  1.你想要得到正确的JSON数据必须要:网络请求成功,服务器返回的必须是JSON 数据,自己(AFN)还能够解析,也就是说你发送的请求,返回的数据类型必须是JSON数据,而且必须以JSON结尾的数据,必须奥,因为解析器认识的数据类型只有,application/json, text/json, text/javascript
  2.AFN有三种类型的解析器,默认的是JSON解析器,还有万能的解析器,说是万能就是什么也做不了,因为它把所有的数据都返回为二进制数据,还得自己解析。
  3.最让人头疼的就是解析XML数据了,AFN也有XML的解析器,但是它返回的仅仅是个解析器还得自己解析。
 如果改变解析器类型,返回的数据类型就会改变,参照以下:
       1. JSON 解析器: 返回JSON 解析之后的数据.  ------ JSON
       2. XML 解析器:  返回NSXMLParser  ------ XML/默认是 SAX 解析.
       3. 万能解析器:  返回NSData 数据.  ----- JSON /XML /HTML /各种文件...
          对于文件/图片/视频/网页HTML,只能选择 万能解析器!

上一篇:XML,json,ajax


下一篇:Android核心分析之二十三Andoird GDI之基本原理及其总体框架