retrofit是一个封装了okhttp的http框架具体可以去看官网和github
官网http://square.github.io/retrofit/
github https://github.com/square/retrofit
背景:
接口的入参是一个File类型的数组
@Multipart
@POST(your api)
Observable<BaseResponse> uploadImg(@Part List<MultipartBody.Part> parts);
在请求接口的地方
List<MultipartBody.Part> parts = null;
//1.创建MultipartBody.Builder对象
MultipartBody.Builder builder = new MultipartBody.Builder()
.setType(MultipartBody.FORM);//表单类型
for (LocalMedia localMedia : result) {//循环取出图片的路径
File file = new File(localMedia.getCompressPath());
RequestBody body = RequestBody.create(MediaType.parse("multipart/form-data"), file);//表单类型
builder.addFormDataPart("参数名", file.getName(), body); //添加图片数据,body创建的请求体
}
parts = builder.build().parts();
然后将parts传入网络请求的入参里
因为传片上传的经验比较少所以做一个记录