Android Retrofit2 表单上传文件

参考链接:https://www.cnblogs.com/wondertwo/p/6143188.html

步骤如下:

首先,将需要上传的文件构建一个RequestBody

File file // 你要上传的文件
// 创建RequestBody,传入参数:"multipart/form-data",File
RequestBody fileRequestBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);

然后,构建一个MultipartBody.Part
ParameterName填入后端定义的文件参数名

 // 创建MultipartBody.Part,用于封装文件数据
        MultipartBody.Part requestImgPart =
                MultipartBody.Part.createFormData("ParameterName", fileName, fileRequestBody);

最后,再接口里定义一个参数@Part MultipartBody.Part file ,将定义好的MultipartBody.Part 传入即可

 @Multipart
 @POST("你的上传地址")
 Observable uploadRecord(@Header("file_name") String fileName, @Part MultipartBody.Part file)

总结:Retrofit 还是比较简单的,从流的方式修改为表单上传修改的地方相当的少。原以为很复杂,实际倒是挺简单的。

你可能感兴趣的:(技术难点)