改造:在模型中上传文件图像

时间:2016-03-16 08:08:01

标签: retrofit retrofit2

鉴于我有这些:

public Class Attachment{
   public String id;
   public File imageFile;
}

// Service
@Multipart
@POST("attachments")
Call<Void> upload(@Part("attachment") Attachment attachment);

如何成功上传图片文件?我知道还有另一种使用@Part MultipartBody.Part file的技术,但我想要一种更好的方法,所以我可以用这种格式提交数据:

attachment: {
   id: 1
   imageFile: //image data here
}

1 个答案:

答案 0 :(得分:0)

我还尝试使用java Model类上传文件,但遗憾的是改装不支持。

我猜你只能单独发送RequestBody文件而不能发送其他值。 如果需要传递id,那么你可以在标题中传递它。

以下是我的文件上传请求的样子

postUserImage(@Header("accept-version") String api_version ,@Header("file_id") String file_id, @Part("image\"; filename=\"image.jpg ") RequestBody image);