專案重構之網路篇 根據OkHttp封裝簡單的框架

宋寶康發表於2017-12-13

##改造說明 之前專案用的xutils,當然不是說xutils不好了,關鍵是用的還是2.**版本,這個。。作者都更新到3.0以後了,所以就要換上一換了。 至於為什麼用OkHttp呢,主要有兩點: 1.google在Android 6.0中刪除了HttpClient的Api,採用的是則是okhttp. 2.OkHttp 是基於http協議封裝的一套請求客戶端,雖然它也可以開執行緒,但根本上它更偏向真正的請求,跟HttpClient, HttpUrlConnection的職責是一樣的。 至於為什麼不用現成的二次封裝好的框架呢,這個。。。我就是想要學習學習OkHttp 。

##一、OkHttp的基本用法 基本的post請求

private OkHttpClient client = new OkHttpClient();
  public static void post(){
    //建立Form表單物件,可以add多個鍵值隊 
    FormBody formBody = new FormBody.Builder()
             .add("param","value")
             .add("param","value") 
             .build();   
    //建立一個Request 
    Request request = new Request.Builder()
            .url("http://www.jianshu.com/") 
            .post(formBody) 
            .build();   
    //發起非同步請求,並加入回撥 
    client.newCall(request).enqueue(new Callback() {
       @Override 
       public void onFailure(Call call,IOException e){

       } 
       @Override 
       public void onResponse(Call call,Response response) throws IOException{ 
             Log.e("okHttp","post="+response.body().string());
       }
   });
   }


複製程式碼

###參考: (一)RxJava在Android網路框架中的使用 【續】網路框架篇(RxJava+OkHttp+Gson)  Android OkHttp完全解析 是時候來了解OkHttp了 Android 你必須學會的okhttp3.0入門篇 OkHttp使用教程 OkRx擴充套件,讓OkGo完美結合RxJava,比Retrofit更簡單易用 Android架構系列-封裝自己的okhttp 開源專案OkHttpPlus——OkHttp封裝庫,支援GET、POST、UI執行緒回撥、JSON格式解析、鏈式呼叫、小檔案上傳下載及進度監聽

相關文章