flutter Dio封裝get/post請求

最近剛學(xué)flutter潜沦,參考簡書大佬們的文章靶溜,使用dio簡單封裝了一下網(wǎng)絡(luò)請求工具類柬采。

依賴版本
9683BF5F-1627-47F1-AE3A-ECBC55ED49CF.png
網(wǎng)絡(luò)請求單例
A2FD169B-6029-4CA6-A2A1-AEF2BA82692F.png
get請求
94900BD6-3931-4116-8D47-76609F5EF515.png

needToken請忽略党窜,以前是打算獲取本地存儲的token,需要傳token的請求帶上点把,后來發(fā)現(xiàn)這么做有問題橘荠,后面會提到。

請注意郎逃,如果get參數(shù)需要拼接在url后哥童,那么使用queryParameters,后面放參數(shù)字典褒翰,如果是放body贮懈,使用data,后面跟參數(shù)字典优训。

BaseMode
E301BEA0-5226-421E-ABC8-D7C126E0261A.png

根據(jù)后臺返回數(shù)據(jù)朵你,簡單封裝。

使用
0B8EAD53-485E-42A8-8DD6-DDF4D3710AC6.png
post請求
4AD8E928-B6AB-4C0E-A58E-6AE3ED16CD4D.png

post請求和get請求區(qū)別不大揣非,我的項目get請求參數(shù)直接拼在url后面抡医,所以get使用queryParameters,后臺要求post放body早敬,所以post使用data魂拦。

post使用
32A0B205-E43F-4A67-BF9B-406B14F78F7C.png
帶本地存儲token的get請求

我們項目很多請求需要帶上登錄返回的token毛仪,所以搁嗓,我用shared_preferences插件把它存在本地芯勘,shared_preferences在iOS端使用的是NSUserDefaults。


5B7D1E5F-439D-4220-ADB2-C0BB8FFFE1EC.png

以前的想法腺逛,如果needToken為true荷愕,則去獲取本地的token,設(shè)置dio.header棍矛,如下所示


B2C34474-07CF-43CC-BE93-1B41C21D33B8.png

然而安疗,獲取token是異步的,也就是說獲取到token后够委,不等網(wǎng)絡(luò)請求完成荐类,直接return了,所以茁帽,獲取到的res自然為null了玉罐。因此,我們需要一個能控制future返回的工具潘拨,正好吊输,flutter提供的Completer能讓我們控制future。
88E414FE-79D7-48A5-8CE6-92EC3B8C84CD.png

適當(dāng)?shù)臅r機調(diào)用complete()铁追,即網(wǎng)絡(luò)請求完成季蚂,獲取到數(shù)據(jù)的時候,然后返回complete.future琅束。

使用
7CD99341-921F-45D8-8E85-B20B33DBA263.png

3797273D-4021-4D57-94FE-BC2053D93994.png

87803E0E-42C6-440E-A37C-DFA508A51772.png
最后

我也是剛學(xué)的菜雞扭屁,如有錯誤,嘿嘿嘿涩禀。料滥。示姿。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末放仗,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子娜遵,更是在濱河造成了極大的恐慌丽声,老刑警劉巖礁蔗,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異雁社,居然都是意外死亡浴井,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門霉撵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來磺浙,“玉大人洪囤,你說我怎么就攤上這事∷貉酰” “怎么了瘤缩?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長伦泥。 經(jīng)常有香客問我剥啤,道長,這世上最難降的妖魔是什么不脯? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任府怯,我火速辦了婚禮,結(jié)果婚禮上防楷,老公的妹妹穿的比我還像新娘牺丙。我一直安慰自己,他們只是感情好复局,可當(dāng)我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布冲簿。 她就那樣靜靜地躺著,像睡著了一般肖揣。 火紅的嫁衣襯著肌膚如雪民假。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天龙优,我揣著相機與錄音羊异,去河邊找鬼。 笑死彤断,一個胖子當(dāng)著我的面吹牛野舶,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播宰衙,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼平道,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了供炼?” 一聲冷哼從身側(cè)響起一屋,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎袋哼,沒想到半個月后冀墨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡涛贯,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年诽嘉,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡虫腋,死狀恐怖骄酗,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情悦冀,我是刑警寧澤趋翻,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站雏门,受9級特大地震影響嘿歌,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜茁影,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望丧凤。 院中可真熱鬧募闲,春花似錦、人聲如沸愿待。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽仍侥。三九已至要出,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間农渊,已是汗流浹背患蹂。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留砸紊,地道東北人传于。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像醉顽,于是被迫代替她去往敵國和親沼溜。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,515評論 2 359