zoukankan      html  css  js  c++  java
  • 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,只能选择 万能解析器!

  • 相关阅读:
    关于int8_t,uint8_t.....等数据类型的理解
    导出函数__declspec(dllexport)
    c++中的namespace
    GitHub C 和 C++ 开源库的清单(含示例代码)
    进制之间的转换一
    为 JSON 字符串创建对象
    HTML5 简单Demo1
    主要浏览器的调试工具
    fiddler2抓包工具使用图文教程
    JAVA将秒的总和转换成时分秒的格式
  • 原文地址:https://www.cnblogs.com/liyy2015/p/5304339.html
Copyright © 2011-2022 走看看