首页 > 代码库 > Android OkHttp 讲解

Android OkHttp 讲解

首先介绍okhttp的简单使用:

  • 一般的get请求
  • 一般的post请求
  • 基于Http的文件上传
  • 文件下载
  • 加载图片
  • 支持请求回调,直接返回对象、对象集合
  • 支持session的保持

于Android Studio可以选择添加依赖

compile ‘com.squareup.okhttp:okhttp:2.4.0‘ 
compile ‘com.squareup.okio:okio:1.5.0‘

(一)Http Get

//创建okHttpClient对象OkHttpClient mOkHttpClient = new OkHttpClient();//创建一个Requestfinal Request request = new Request.Builder()                .url("https://github.com/hongyangAndroid")                .build();//new callCall call = mOkHttpClient.newCall(request); //请求加入调度call.enqueue(new Callback()        {            @Override            public void onFailure(Request request, IOException e)            {            }            @Override            public void onResponse(final Response response) throws IOException            {                    //String htmlStr =  response.body().string();            }        });  
response.body().string() 获得字符串
response.body().bytes() 获得二进制字节数组
response.body().byteStream() 获得输入流

(二) Http Post 携带参数

Request request = buildMultipartFormRequest(        url, new File[]{file}, new String[]{fileKey}, null);FormEncodingBuilder builder = new FormEncodingBuilder();   builder.add("username","张鸿洋");Request request = new Request.Builder()                   .url(url)                .post(builder.build())                .build(); mOkHttpClient.newCall(request).enqueue(new Callback(){});
 

Android OkHttp 讲解