Android实战——okhttp3的使用和封装


本篇文章包括以下内容:

  • okhttp3是什么
  • okhttp3工具类的演示(基于okhttp工具类的封装)
  • okhttp3工具类的封装

使用作者的项目的原话:Android和Java应用程序的HTTP和HTTP / 2客户端
其项目地址:https://github.com/square/okhttp

1、Get请求
2、Post请求
3、文件上传
4、文件下载

由于okhttp3里面是依赖于okio进行开发的,所以务必将okio也引入;老年服饰


我们根据okhttp3的使用封装了HttpUtils,用起来非常简单,跟第三方平台Api使用一样

这里使用response.body().string()返回响应结果内容


okhttp3采用构造者模式来实现的,下面是简单的API介绍:

  • Request.Builder 请求构造者
    • url(String url):请求的url
    • post():默认是Get方式
    • post(RequestBody body):Post带参数
    • build():构造请求

请求参数有三种:

  • RequestBody:普通的请求参数
  • FormBody.Builder:以表单的方式传递键值对的请求参数
  • MultipartBody.Builder:以表单的方式上传文件的请求参数

执行方法:

  • Call
    • enqueue(Callback callback):异步请求
    • execute():同步请求

创建HttpUtils工具类,由于okhttp3不建议创建多个对象,所以采用饿汉式的单例模式

okhttp3也提供了同步的请求方式,通过call.execute()方法,这里都使用异步来演示

如果在下载文件中需要进度的话,可以修改onResponse回调里面的内容就可以获取进度

转载于:https://www.cnblogs.com/zhanglixina/p/9603727.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值