網絡請求框架需求梳理

  最近要對公司的網絡請求框架進行重構,爲了打造一款好用強大的網絡請求框架,梳理一下網絡請求框架的需求。

基本需求

  能夠正常的進行GET,POST,PUT,DELETE,HEAD,PATCT 等網絡請求,能夠實現文件的上傳下載等功能。這個大多數網絡請求都能夠實現。

高級需求

1)支持鏈式網絡請求

   所謂鏈式網絡請求就是一個請求完了,接着執行下一個網絡請求。前一個網絡請求開始的前提必須是上一個網絡請求正常結束。

2)支持類組隊列的網絡請求

  組隊列發送網絡請求,一組網絡請求,異步發送,等到這一組所有的網絡請求都結束的時候統一響應結束,並進行後續的邏輯。

3)支持啓動時的網絡請求依賴

  支持啓動時所有的網絡請求都依賴有一個單獨的網絡請求,或者只鏈式組合請求,或者類組隊列組合網絡請求。等到被依賴的網絡請求執行完以後纔會執行其他的網絡請求。多用於app有啓動配置的情況。

4)支持網絡請求的取消

   支持網絡請求的取消存在兩種情況,第一種情況就是該網絡請求在網絡請求池中,但是還沒有發送網絡請求這種情況直接將該網絡請求從請求池中移除掉;第二種情況就是該網絡請求已經發送,但是還沒有收到返回。這種情況移除該網絡請求返回時對應的的回調,等到網絡請求返回時,不再執行額外的邏輯,節省資源,避免出錯。

5)支持mock

  支持對網絡請求進行mock配置,能夠攔截指定的接口,並重定向到指定mock平臺或者本地服務器等。實現高效的並行開發。

6)支持資源文件下載優先走cdn

   如果項目中的資源文件有配置在cdn,那麼可以使用優先使用cdn資源的選項

7)支持網絡請求安全策略配置

  可以實現網絡請求安全策略的配置,可以實現全局配置,也可以實現局部的配置(針對某些特殊的網絡請求)

擴展型需求

1)支持請求加簽

  能夠支持不同規格的網絡請求加簽。甚至是同一個應用中能夠支持多套網絡請求加簽規格。

2)支持接口緩存

  能夠支持對接口返回數據的緩存,設置緩存時間等,甚至在一個應用中可以支持多套緩存框架,替換某一個時能夠做到平穩過渡。

3)支持域名動態更換

   支持域名動態更換,肯定也支持域名的全局更換了,避免由於域名問題給app使用帶來麻煩。可以支持多套域名更換及系統,能夠做到平滑的過渡到某個系統。

4)全局配置網絡請求指示器

  能夠全局的配置網絡請求指示器,網絡請求開始,自動出現,網絡請求結束自動消失,同時對於某一個或者某一些可以配置自定義的網絡請求指示器。

5)請求url配置公共參數

  支持在發送網絡請求前,能夠對url添加公共的path,以及公共query參數。既能夠實現全局配置,也可以對某些,某個請求單獨配置。

更多技術乾貨文章可以掃描下方二維碼:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章