關(guān)于網(wǎng)絡(luò)請(qǐng)求

來(lái)看看嘛

每次用AFN的時(shí)候,總覺(jué)得有比較好用的,建立一個(gè)單例,建立mananger,抽取出baseURL就可以可以了.封裝的很好,方便快捷,堪稱(chēng)程序員之友.

但是,今天腦洞一開(kāi),想了一下(本文章是基于swift2.0語(yǔ)法的)

  1. 發(fā)現(xiàn)很多地方都直接 調(diào)用AFN GET方法 NetworkTool.sharedInstance.afnManager.GET ,這樣有一個(gè)問(wèn)題,如果有一天 afnManager.GET方法添加史侣、修改处渣、刪除了參數(shù).那么我們所有使用 AFN GET 方法都需要修改,所以需要將afnManager.GET進(jìn)行封裝

自己來(lái)封裝GET請(qǐng)求,外面都直接調(diào)用requestGET,如果AFN以后不好用,想換其他的框架或者AFN升級(jí)請(qǐng)求參數(shù)更換了,我們只需要修改requestGET里面的內(nèi)容,外面不同修改
func requestGET(URLString: String, parameters: AnyObject?, success: ((NSURLSessionDataTask, AnyObject?) -> Void)?, failure: ((NSURLSessionDataTask?, NSError) -> Void)?) {
afnManager.GET(URLString, parameters: parameters, progress: nil, success: success, failure: failure)
}

  1. NetworkTools 添加 requestGET 方法,封裝 afnManager.GET 方法.

     func requestPOST(URLString: String, parameters: AnyObject?, success: ((NSURLSessionDataTask, AnyObject?) -> Void)?, failure: ((NSURLSessionDataTask?, NSError) -> Void)?) {
           afnManager.POST(URLString, parameters: parameters, progress: nil, success: success, failure: failure)
     }        
    

發(fā)現(xiàn)封裝后的 requestGET 和 requestPOST 方法里面,除了調(diào)用 AFN 的方法名稱(chēng)不一樣外,其他的一模一樣,那么這個(gè)時(shí)候,我們可以將這2個(gè)方法合成一個(gè)方法,根據(jù)不同的請(qǐng)求方式調(diào)用不同的 AFN 方法

定義 請(qǐng)求方法枚舉

// MARK: - 請(qǐng)求方法枚舉

    enum CZNetworkMethod: String {
    case GET = "GET"
    case POST = "POST"
    }

定義request方法

    /**
    網(wǎng)絡(luò)請(qǐng)求封裝
    parameter method:    請(qǐng)求方式
    parameter URLString:  請(qǐng)求URL地址
    parameter parameters: 請(qǐng)求參數(shù)
    parameter success:    請(qǐng)求成功回調(diào)
    parameter failure:    請(qǐng)求失敗回
    */


    func request(method: CZNetworkMethod, URLString: String, parameters: AnyObject?, success: ((NSURLSessionDataTask, AnyObject?) -> Void)?, failure: ((NSURLSessionDataTask?, NSError) -> Void)?) {

        switch method {

          case .GET:

          afnManager.GET(URLString, parameters: parameters, progress: nil, success: success, failure: failure)

        case .POST:

         afnManager.POST(URLString, parameters: parameters, progress: nil, success: success, failure: failure)

      }
  }

這是一個(gè)完整的封裝AFN代碼過(guò)程,改完后以后公司就算改用其他的網(wǎng)絡(luò)請(qǐng)求第三方,只需要把請(qǐng)求方法改掉,而不用在每處調(diào)用網(wǎng)絡(luò)請(qǐng)求的位置修改,方便快捷,而且還可以選擇GET還是POST,實(shí)現(xiàn)了最大的快捷.

我是愛(ài)碼字的程序猿,網(wǎng)絡(luò)請(qǐng)求一般都是項(xiàng)目開(kāi)始的時(shí)候做的,如果接觸的老項(xiàng)目一般都已經(jīng)做好了,一般都不想改這么基礎(chǔ)的東西,萬(wàn)一有時(shí)候需要改呢,例如這次蘋(píng)果所有網(wǎng)絡(luò)請(qǐng)求走https,謝謝查閱!比較簡(jiǎn)單,就不上代碼了.

霍建華

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市煮纵,隨后出現(xiàn)的幾起案子蔑赘,更是在濱河造成了極大的恐慌蹬叭,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件再层,死亡現(xiàn)場(chǎng)離奇詭異贸铜,居然都是意外死亡堡纬,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)蒿秦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)烤镐,“玉大人,你說(shuō)我怎么就攤上這事棍鳖∨谝叮” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵渡处,是天一觀(guān)的道長(zhǎng)镜悉。 經(jīng)常有香客問(wèn)我,道長(zhǎng)医瘫,這世上最難降的妖魔是什么侣肄? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮醇份,結(jié)果婚禮上稼锅,老公的妹妹穿的比我還像新娘。我一直安慰自己僚纷,他們只是感情好矩距,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著怖竭,像睡著了一般剩晴。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上侵状,一...
    開(kāi)封第一講書(shū)人閱讀 52,328評(píng)論 1 310
  • 那天,我揣著相機(jī)與錄音毅整,去河邊找鬼趣兄。 笑死,一個(gè)胖子當(dāng)著我的面吹牛悼嫉,可吹牛的內(nèi)容都是我干的艇潭。 我是一名探鬼主播,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼戏蔑,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蹋凝!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起总棵,我...
    開(kāi)封第一講書(shū)人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鳍寂,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后情龄,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體迄汛,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡捍壤,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了鞍爱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鹃觉。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖睹逃,靈堂內(nèi)的尸體忽然破棺而出盗扇,到底是詐尸還是另有隱情,我是刑警寧澤沉填,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布疗隶,位于F島的核電站,受9級(jí)特大地震影響拜轨,放射性物質(zhì)發(fā)生泄漏抽减。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一橄碾、第九天 我趴在偏房一處隱蔽的房頂上張望卵沉。 院中可真熱鬧,春花似錦法牲、人聲如沸史汗。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)停撞。三九已至,卻和暖如春悼瓮,著一層夾襖步出監(jiān)牢的瞬間戈毒,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工横堡, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留埋市,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓命贴,卻偏偏與公主長(zhǎng)得像道宅,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子胸蛛,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容