1. 程式人生 > >OkGo新增公共引數

OkGo新增公共引數

  • 動態改變的引數

    我需要上傳的是MultipartBody,多檔案帶引數的上傳,一開始我想著使用OkHttp的攔截器來實現,但發現OkGo對Body使用ProgressRequestBody進行過一層包裝,且ProgressRequestBody沒有提供新增引數的方法,檢視到ProgressRequestBody的writeTo方法是使用的包裝前的Body進行輸出,所以嘗試使用RequestBody的writeTo方法進行請求體提取,重灌轉化成我想要的Body型別,技拙,未果。(求知道的大牛告訴我怎麼用這種方法實現)

    所以另闢蹊徑,秉承原始碼之下,了無祕密,發現在發起請求前會先回調CallBack的onStart方法,所以在onStart方法裡對request再新增引數實現公共引數的新增。

    可以將CallBack提取為基類,在基類的onStart方法裡對公共新增的引數進行統一新增,以及處理(加密之類的)。