一、okHttp包含:
1.一般的get请求
2.一般的post请求
3.基于http的文件上传
4.文件下载
5.图片下载
6.支持请求回调,直接返回对象、对象集合
7.支持session保持
二、一般的get请求
OkHttpClient client = new OkHttpClient(); String run(String url) throws IOException { Request request = new Request.Builder() .url(url) .build(); Response response = client.newCall(request).execute(); return response.body().string(); } 三、一般的post请求 public static final MediaType JSON = MediaType.parse("application/json; charset=utf-8"); OkHttpClient client = new OkHttpClient(); String post(String url, String json) throws IOException { RequestBody body = RequestBody.create(JSON, json); Request request = new Request.Builder() .url(url) .post(body) .build(); Response response = client.newCall(request).execute(); return response.body().string(); } 四、基本方法1、Request(请求)
每一个http请求中都应该包含一个url,一个get或post方法以及一个Header或其他参数。
2、Response(响应)
包含一个回复代码(200:成功;404:未找到),Header和body。
response.body()返回ResposeBody类。
可以获取string类型(response.body.string() );获取二进制字节数组( response.body().bytes() );获取inputstream()(response.body().byteStream() )
五、理解
1.在一个项目中,对okHttp进行封装,要在application里面进行初始化
public static OkHttpManager.MainThreadExecutor mExecutor = new OkHttpManager.MainThreadExecutor(new Handler());2.管理okHttpClient,整个应用的网络请求用一个OkHttpClient
注:这只是我自己对okHttp的理解,不喜勿喷,有什么补充或更深层次的理解,大家请留言,互相交流互相学习。