菜鳥開發之路 okhttp的簡單封裝

2021-07-09 12:20:56 字數 3497 閱讀 9609

1.封裝的好處:

在個人看來,封裝對於乙個專案來說非常重要。物件導向的三大特性之一就是封裝,那麼封裝在我們寫的專案上有什麼致觀的作用呢?

第一 : 封裝能讓你的**更為簡潔,可讀性更高。在團隊合作中,這個效果非常顯著。

第二:封裝讓你省去寫不少**的時間。

2.關於okhttp的簡單使用

首先在studio 的gradle新增okhttp的庫還有依賴包

好了那麼可以開始寫okhttp的**了 封裝現在只是基於get 和 post請求的封裝

那麼先看看 不封裝的get 和 post請求是怎樣的

//get請求:

//建立okhttpclient物件

//建立乙個request

//請求加入排程

call.enqueue(new callback()

@override

public

void

onresponse(final response response) throws ioexception

});

post請求無非就是在get請求上新增了引數 所以**就不寫了

好 讓我們來準備下封裝

首先我們需要寫乙個 callback物件 來存okhttp的返回值

public abstract

class

basecallback

parameterizedtype parameterized = (parameterizedtype) superclass;

return $gson$types.canonicalize(parameterized.getactualtypearguments()[0]);

}public basecallback()

public abstract void onbeforerequest(request request);

public abstract void onfailure(request request, exception e) ;

/***請求成功時呼叫此方法

* @param response

*/public abstract void onresponse(response response);

/***

* 狀態碼大於200,小於300 時呼叫此方法

* @param response

* @param t

* @throws ioexception

*/public abstract void onsuccess(response response,t t) ;

/*** 狀態碼400,404,403,500等時呼叫此方法

* @param response

* @param code

* @param e

*/public abstract void onerror(response response, int code,exception e) ;

/*** token 驗證失敗。狀態碼401,402,403 等時呼叫此方法

* @param response

* @param code

*/public abstract void ontokenerror(response response, int code);

}

//okhttp封裝

//我在封裝的時候順便把獲取到返回的json進行解析

}

封裝完畢 這裡用到的是okhttp的非同步請求的封裝塊 因為非同步請求比同步請求更為常用

**可以放到實際專案去使用

OkHttp的簡單使用

加入依賴 一 get請求 無非就是3步走 1.建立客戶端 2.建立請求 3.傳送請求,處理響應 同步get請求 建立客戶端 建立get請求 非同步get請求 post請求 比get多了一步封裝請求體 建立乙個請求體 formbody body new formbody.builder add key...

菜鳥的it之路 起航

之前在知乎上看見怎麼學習資料結構下一位答主的回答,他引用了n.wirth 沃斯 的話 程式 資料結構 演算法。哈,菜鳥無法驗證這句話的正確性有多大 但毫無疑問的是,資料結構應當是一名菜鳥程式狗要重點學習的東西,是不可忽略的一部分。所以,這篇隨筆我將列出接下來一段時間我的資料結構學習計畫 菜鳥的爬行路...

Android遊戲開發菜鳥之路(五)

最近一直在根據 android games beginning 一書寫乙個遊戲框架,2d遊戲基本的功能此框架基本可以實現,因此突發奇想,寫乙個簡單的連連看遊戲試試這個框架的功力。連連看遊戲的主要兩個重點是遊戲布局的生成和判斷兩個模組是否可以消除。先說遊戲布局的生成 這裡我實現的方法比較樸素,一開始先...