zoukankan      html  css  js  c++  java
  • 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回调里面的内容就可以获取进度

  • 相关阅读:
    vtk体绘制时采样的起点使用噪声纹理来进行扰动
    转:轻松搞死VS
    虚拟华师(UDK)
    虚拟手术中的血流模拟(Physx+OpenGL)
    要找工作了,研究工作得暂停了
    MC+多个emitter成功把撕裂场景基本解决了
    鸭梨很大
    这世界好人多啊
    JS代码的格式化和压缩
    FusionCharts使用实例
  • 原文地址:https://www.cnblogs.com/zhanglixina/p/9603727.html
Copyright © 2011-2022 走看看