開始建構你的Alamofire
這邊前言沒啥好說的,可以參考AFNetworking的那邊,雖然Alamofire已經幫你做了很好的封裝,但是科技始終來自於惰性,我仍然會再寫一個封裝讓他變得更簡易使用一點。
首先我們一樣從閉包開始宣告起(閉包相當於之前OC的Block),Class直接照各位習慣命名就好,在下命名是"APIRequest",閉包一樣先開成功及失敗。
接著處理Get、Post的宣告
在這邊把要傳進來以及逃逸閉包先處理好,在丟到下一個方法實作,這樣我們在單例只要呼叫這邊就好,不用理會實作做了什麼,下面就是實作的方法:
method這邊就是直接處理你是Post還是Get,接下來我們除了一般的網路請求以外,還會有上傳檔案的需求,這邊也一併講解。上傳檔案我這邊有多做了一個多檔案上傳,因為超方便所以原先寫的單檔案上傳已經被在下冷藏冰封,也懶得改裡面的一些部分,但在下還是會解說該如何改正:
單檔案上傳這邊的宣告,name跟fileName這邊應該改成name: String? = "image"、fileName: String? = "image.png"比較好,這樣從外部傳入也比較方便,目前這樣的方法是寫死的,並不是一個好的封裝,過去的東西就讓它過去就好,我們來講講多檔案上傳:
主要就是透過陣列傳入圖片或者各種文件,當然只有這樣是不行的,後台部分也必須做陣列上傳的相應處理,後面講到實際使用部分我會順便附上PHP的處理多檔案上傳的Code;到目前為止我們的封裝就好了。