本文图片上传感觉比网上找的详细很多,不信亲测项目
地址:
https://github.com/HarryXR/RetrofitRxjavaDemo
Demo只展示了Get请求因为post 上传图片用的公司的Url,不便展示,但已封装多图上传,修改baseurl 和参数即可使用
- 说说多图上传
使用MultipartBody,封装多张图片以及所需参数
@POST("face")
Observable<BaseResponse<PostResponse>> upload(@Body MultipartBody imgs);
MultipartBody参数封装- 添加一张图片
RequestBodyrequestBody=RequestBody.create( MediaType.parse("multipart/form-data"), file);
MultipartBody.Builder builder = new MultipartBody.Builder();
builder.setType(MultipartBody.FORM);
builder.addFormDataPart("file", file.getName(), requestBody);
MultipartBody body=builder.build();//调用即可```
- 多图上传简单说就是循环添加图片
for (File f : files) {
RequestBody requestBody = RequestBody.create( MediaType.parse("multipart/form-data"), f);
builder.addFormDataPart("file", f.getName(), requestBody);
}
###demo 中我测试的是更换头像,只有一张图片,不过用的是多图上传的方法,有兴趣的可以试试