AFNetworking的理解

AFNetworking的理解

 

使用方法

1. 新建的工程中导入AFNetworking3.0中的(AFNetworking 和UIKit+AFNetworking两个文件夹)

2. 在用到AFNetworking的地方,引入头文件: #import "AFNetworking.h"

 

 

3. 在运行完上面这个代码后会出现下面的问题

这是苹果网络安全的问题,解决方法:在项目的info.plist添加一下元素,就可以正常运行了.

 

4. 问题:将上述的网址用POST方法来请求,会出现的问题

会出现以下错误

我在上面设置了,返回序列的contentType 的类型,但是仍会出现错误,就是因为这个URL只能用GET请求(所以不能用post)

manager.responseSerializer.acceptableContentTypes = [NSSet setWithArray:@[@"text/html", @"", @""]];

 

5. 问题:拆分GET请求的URL,有可能出现的问题如下:

  

添加了 (application/json)就成功请求数据了.

 

6. 问题:URL为POST请求的,就算用post请求也会有错误

错误是这样的

所以知道怎么改了吗?>>>>>添加 (text/plain) 问题完美解决啦!

可以试一下GET请求一下网址.能成功对吧!

 

7. Upload上传数据,这个没法测试,大致代码如下,我已经测试了

 

8. 其他问题 :请求数据序列化类型的设置和返回数据序列化类型的设置

/**

  注意: 数据返回序列化:二进制流 ,JSON ,XML ..... 默认的类型是JSON类型的,所以平时不需要设置(AFJSONResponseSerializer  AFXMLParserResponseSerializer  AFPropertyListResponseSerializer

          像下面这么设置后,返回的数据就变成二进制数据流了.

           AFHTTPResponseSerializer *responseSerializer  = [AFHTTPResponseSerializer serializer];

           manager.responseSerializer                             = responseSerializer;

*/

/**

注意: 请求序列化,也有几种类型 :二进制   JSON .....默认二进制类型的请求(  AFHTTPRequestSerializer  AFJSONRequestSerializer  AFPropertyListRequestSerializer)

     向下面这么设置后,请求的数据就是JSON类型的

      AFJSONRequestSerializer *requestSerializer    = [AFJSONRequestSerializer serializer];

       manager.requestSerializer                            = requestSerializer;

*/

 

根据实际情况更改请求数据序列化对象 和 返回数据序列化对象

 

9.屏蔽垃圾信息

 

 

进入一下界面进行修改

 

源码地址

 github地址 https://github.com/makingitbest/AFNetworking-Test.git

 

转载于:https://www.cnblogs.com/makingitbest/p/5771404.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值