OkHttp网络框架的使用整理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Kongou/article/details/82351820

最近的项目中,使用了OkHttp网络框架来上传数据。正好自己在网络这一块还不太熟,借此机会来整理总结一下。

一、什么是OkHttp

OkHttp是一个高效的HTTP客户端,通过它可以轻松地实现HTTP请求的发送。它有一些优点,但是具体是什么原理使它拥有这些优点,还需要后续对源码进行分析。

二、使用方法

1、GET请求

OkHttp的请求,是围绕着OkHttpClient来进行的。一个请求,最重要的一点就是有它的url。这是请求的地址信息,他决定你请求的目的地。一个GET请求,不需要太多的参数,有一个url就能完成。在OkHttp框架中,先获取一个OkHttpClient客户端类,之后建立一个Request类,这个类可以添加请求时候的配置信息,如添加参数url和请求类型Get或Post。创建好Request类后,根据这个类,使用OkHttpClient类的newCall方法,以request类为参数,生成Call类。这个类就是最终请求时用到的类。最后调用call类的enqueue方法来发起请求。

2、POST请求

POST请求比GET请求多了一个请求体参数,里面要放入我们需要传递的参数。这个请求体是通过RequestBody的方式创建的。我们根据规则生成好RequestBody,之后将请求方式改为post,其他的和GET请求是一样的。

一般常用的就是GET和POST请求。不得不说OkHttp框架这种方式非常友好,使用起来非常方便。

三、拦截器interceptor

拦截器真的是OkHttp框架的精髓,通过它我们可以获取到发起的网络请求的各种信息。如request和response的内容。根据这些我们可以干什么呢。我们可以修改请求内容,修改返回内容,观察请求和返回内容。如统计请求与相应结果,进行分析,修改返回结果来进行Mock等等。

四、单例的使用

使用OkHttpClient时,推荐使用单例。因为它内部维护了请求线程池,重用这些资源可以节省资源,想一想也明白这肯定比每建立一次请求都new一个client要好得多。

现在只是能够简单的使用OkHttp框架,但是它绝对远不止这些内容。后续有时间,要深度学习一下这个框架的精髓。

猜你喜欢

转载自blog.csdn.net/Kongou/article/details/82351820