1.Retrofit接口定義:@Multipart@POST(RequestUrl.BANK_CARD_INFO)ObservablebankCardInfo(@PartMultipartBody.Partfile);2.使用:StringtraceId=UUID.randomUUID().toString();//隨機(jī)生成唯一traceIdStringpath=selectList.get(0).getPath();//Log.d(TAG,"onActivityResult:1616="+path);Filefile=newFile(path);RequestBodyfileBody=RequestBody.create(MediaType.parse("image/*"),file);//RequestBodyrequestBody=RequestBody.create(MediaType.parse("multipart/form-data"),file);RequestBodytraceBody=RequestBody.create(MediaType.parse("multipart/form-data"),file);//RequestBodyfileRQ=RequestBody.create(MediaType.parse("multipart/form-data"),file);//MultipartBody.Partpart=MultipartBody.Part.createFormData("picture",file.getName(),fileRQ);Toast.makeText(this,"1933="+traceId,Toast.LENGTH_SHORT).show();RequestBodybo=newMultipartBody.Builder().addFormDataPart("trace_id",traceId,traceBody).addFormDataPart("image",file.getName(),fileBody).build();MultipartBody.PartmyBody=//MultipartBody.Part.createFormData();MultipartBody.Part.createFormData("image",file.getName(),bo);//name為傳遞文件的鍵//todo:傳遞銀行卡照片到智趣,返回銀行卡信息RxManager.getMethod().bankCardInfo(myBody).compose(RxUtil.schedulers(this)).subscribe(newRxCallback(this){@OverridepublicvoidonSuccess(Objecto,Stringmsg){Log.d(TAG,"onSuccess:獲取銀行卡信息成功");}});break;}
有大佬遇到過(guò)這個(gè)問題嗎:使用Retrofit上傳文件并且攜帶參數(shù),為什么這樣不行呢?大佬們有什么好的建議?
狐的傳說(shuō)
2019-06-21 16:18:35