使用Retrofit上传文件时需要使用multipart/form-data格式进行上传
客户端定义Retrofit请求代码如下
// 上传单张图片
@Multipart
@POST
fun uploadFile(@Part file:MultipartBody.Part):Observable<String>
//注意一定要添加@Multipart注解
客户端需要创建一个MultipartBody.Part传入到服务器
File file = new File(filePath);
RequestBody imageBody = RequestBody.create(MediaType.parse("multipart/form-data"),
file);
MultipartBody.Part imagePart = MultipartBody.Part.createFormData("file",
file.getName(), imageBody);
如果需要上传多张图片
//上传多张图片
@Multipart
@POST
fun uploadFile(@PartMap image:WeakHashMap<String,MultipartBody.Part>):Observable<String>
网友评论