1. APIService 定义注解
@Multipart @POST("cyxx/Feedback/add.do") Observable<ResponseBody> getFeedbackResult( @PartMap Map<String, RequestBody> params );
2.代码里使用
Map<String, RequestBody> map = new HashMap<>(); //text属性如何放入 map.put("name",RxPartMapUtils.toRequestBodyOfText(mAccount)); //file属性如何放入 for (String _selectedPhoto : pSelectedPhotos) { File _file = new File(_selectedPhoto); Log.e(TAG,"file"+_file.exists()); if(_file.exists()) { RequestBody _requestBody = RxPartMapUtils.toRequestBodyOfImage(_file); Log.e(TAG,"file:"+_file.getName()); map.put("file\"; filename=\""+_file.getName()+"", _requestBody); } }
3.RxPartMapUtils方法
public static RequestBody toRequestBodyOfText (String value) { RequestBody body = RequestBody.create(MediaType.parse("text/plain"), value); return body ; } public static RequestBody toRequestBodyOfImage(File pFile){ RequestBody fileBody = RequestBody.create(MediaType.parse("image/*"), pFile); return fileBody; }