国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android使用 Retrofit 2.X 上傳多文件和多表單示例

2019-10-22 18:28:59
字體:
供稿:網(wǎng)友

android/258773.html">retrofit post請求上傳表單和文件最重要的就是就是去構(gòu)建RequestBody,今天為大家?guī)硪环N超級簡單的上傳方式

Body方式:

1、Retrofit接口RetrofitInterface

 @POST(URLConstant.URL_PATH)  Flowable<UploadImgBean> upload(@Body RequestBody Body);

2、Retrofit的配置

private static RetrofitInterface getRetrofitInterface(String baseUrl) {    if (retrofitInterface == null) {      Retrofit retrofit = new Retrofit.Builder()          .baseUrl(baseUrl)          .addConverterFactory(GsonConverterFactory.create())//        .addConverterFactory(ScalarsConverterFactory.create()) //string          .addCallAdapterFactory(RxJava2CallAdapterFactory.create())          .build();      retrofitInterface = retrofit.create(RetrofitInterface.class);    }    return retrofitInterface;  }

3、構(gòu)建body

 public static Flowable<UploadImgBean> upload(List<File> fileList) {    //構(gòu)建body//addFormDataPart()第一個參數(shù)為表單名字,這是和后臺約定好的    MultipartBody.Builder builder = new MultipartBody.Builder()        .setType(MultipartBody.FORM)        .addFormDataPart("username", "name")         .addFormDataPart("phone", "phone")   //注意,file是后臺約定的參數(shù),如果是多圖,file[],如果是單張圖片,file就行    for (File file : fileList) {      //這里上傳的是多圖      builder.addFormDataPart("file[]", file.getName(), RequestBody.create(MediaType.parse("image/*"), file));    }    RequestBody requestBody = builder.build();    return getRetrofitInterface(URLConstant.URL_BASE).upload(requestBody);  }

4、開始執(zhí)行上傳

HttpUtils.upload(mUploadFileList)        .subscribeOn(Schedulers.io())        .observeOn(AndroidSchedulers.mainThread())        .subscribe(new DisposableSubscriber<UploadImgBean>() {          @Override          public void onNext(UploadImgBean uploadImgBean) {            Log.i(TAG, "onNext: " );             }          }          @Override          public void onError(Throwable throwable) {            Log.i(TAG, "onError: --->" + throwable.getMessage());          }          @Override          public void onComplete() {            Log.i(TAG, "onComplete: ");          }        });

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到Android開發(fā)頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 新泰市| 澄城县| 奉化市| 富顺县| 沈阳市| 红桥区| 正蓝旗| 托克逊县| 清徐县| 县级市| 蒙山县| 右玉县| 仁寿县| 齐齐哈尔市| 志丹县| 鄂尔多斯市| 安平县| 清苑县| 海安县| 晋江市| 铜陵市| 合肥市| 额济纳旗| 斗六市| 同心县| 眉山市| 高台县| 醴陵市| 肥乡县| 宾阳县| 西藏| 九江县| 毕节市| 中卫市| 马公市| 双峰县| 恩平市| 娄烦县| 邵阳市| 蓝田县| 沂南县|