ios-Alamofire的简单使用

关于这个框架其实是AFN的作者Matt Thompson用Swift写的一个轻量级别的网络框架。

在接收全新的框架之前,我觉得我们第一时间要去做的就是去阅读官方文档,以及去下载官方的示例程序。

废话不多说,先记录下自己的一些使用情况和一些笔记。

发送网络请求的方法,其中

参数1:传入url地址

参数2:传入发送请求的方式

参数3:发送请求的参数

参数4:指定服务器支持的编码的格式,如果服务器支持的编码格式不是UTF8的话,我们就可以通过指定encoding来指定编码的格式

参数5:需要告诉服务器的额外信息的,也就是请求头的信息,我们要传入什么比如说我们可以设置User-Agent或者是Accept-Language等等

 Alamofire.request(url:,
 method:, 
 parameters:,
 encoding:, 
 headers: )
在Alamofire中调用函数的方式,其实是链式相应的方式,因为调用它的方法相当于是一个接一个的调用,比如说如下所示

 Alamofire.request(url!, method: .get,parameters:["name":"zhangsan"],headers:["User-Agent":"iPhone"]).responseJSON { (response) in
            
           //result.value就是反序列化完成的字典或者数组
           print(response.result.value)
           //如果有错误就是通过result.error来获取
           print(response.result.error)
           //判断是否成功
           print(response.result.isSuccess)
           //判断是否失败
           print(response.result.isFailure)
            }.responseString { (response) in
             /**此处是输出字符串的响应的结果,也就是说这里其实就相当于在AFN中,我们想把AFN不要做反序列化先,
             先转化成字符串格式,方便我们查看返回的数据,是什么类型的*/
          print(response.result.value)
        }
        
        print("加载请求")
    }
通过进入头文件观察,这些返回值都是Self,Self代表的应该就是当前类的实例。

 public func responseJSON(
        queue: DispatchQueue? = nil,
        options: JSONSerialization.ReadingOptions = .allowFragments,
        completionHandler: @escaping (DataResponse<Any>) -> Void)
        -> Self
总结来说就是如果我们使用了responseJSON,就不要再去指定相应的数据格式了比如说text/plain,还有就是如果服务器返回的数据类型不正确的话,我们就用responseString查看返回的JSON字符串,还有就是不再提供网络的指示器了,需要我们自己进行添加。还有就是支持链式的响应。最后一点就是上传文件的方法没有AFN方便
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值