前言:習慣多問一句為什麼。因為不管**怎麼寫,總有這麼寫的緣由道理,明白了為什麼,自然也知道了一些不容易發現的點、問題,這樣 寫**也就有了目標,也容易理解記憶,這麼寫只是解決這種問題的一種方法。以後還可能接觸到其他方法,有兩個方法了,就會有比較,理解了兩種方法的優缺點,我們對程式的理解就有了更進一步的認識。
這幾天一直在處理關於網路請求的一些bug,總結了一些自己遇到的問題和想到的處理辦法,分享並記錄下來。
關於網路:
1、首先要定義網路使用什麼框架,是使用volley,還是thread+handler,還是asynctask,還是第三方的xutils等等
2、其次根據自己做的專案的型別和需求,對網路層進行封裝,並對網路層的機制和統一處理進行初步的定義與規劃。比如請求超時時間, 請求失敗後是否有重試機制,請求頭的統一設定還有請求錯誤的介面定義與統一處理等等,就算當時定不下來,也應該保證**的低耦合度,以後也方便統一處理。 比如對請求的success 和 failed的介面定義和意義,引數含義的定義。還有對錯誤的處理的定義,cancel的處理等等。
3、網路請求介面的實現與呼叫。我們應該從本質上清楚地知道,網路請求是幹什麼的。其實,網路請求就是 從資料庫或者檔案等等一些儲存介質中裡面 取資料(和使用者狀態有關的操作也是重新整理資料的一種)。就像android開發文件裡面寫的一樣,資料的儲存一般有以下幾種方式,sharedpreference、sqlite、contentprovider、assets raw等檔案,還有就是網路。所以 我們應當盡量讓網路請求和ui分離。
開發網路常識
網際網路開發的常用概念 子網掩碼 與ip位址配合使用判斷兩台計算機是否位於同乙個子網路.dhcp協議 每乙個子網路中,有一台計算機負責管理本網路的所有ip位址,它叫做 dhcp伺服器 當新的計算機加入網路,必須向 dhcp伺服器 傳送乙個 dhcp請求 資料報,申請ip位址和相關的網路引數.然後dh...
Python開發 網路基礎
tcp與udp的區別 tcp 傳送控制協議 transmission control protocol tcp是傳輸層的乙個協議,基於ip協議,用於傳輸類似http的資訊。tcp協議是面向連線的協議,通過三次握手機制,盡量保證鏈結的可靠性 tcp鏈結需要三次握手,釋放需要四次揮手。udp 使用者資料...
iOS開發網路 HTTP協議
一 url 1.基本介紹 url的全稱是uniform resource locator 統一資源定位符 通過1個url,能找到網際網路上唯一的1個資源 url就是資源的位址 位置,網際網路上的每個資源都有乙個唯一的url 2.url中常見的協議 超文字傳輸協議,訪問的是遠端的網路資源,格式是htt...