【发布时间】:2020-12-17 21:41:37
【问题描述】:
我正在使用 Retrofit2 发出 Multipart 请求,我在其中上传了一张图片和一些文本数据。文件部分在这里是可选的,这意味着用户可以选择也可以不选择图像。有没有办法在 Retrofit 中使任何参数可选?
我试过这样,如果代码下面的文件强制工作,
RequestBody requestBody = RequestBody.create(MediaType.parse("*/*"), file);
fileToUpload = MultipartBody.Part.createFormData("image", file.getName(), requestBody);
@Multipart
@POST("url")
Call<Response> create(
@Part("name") RequestBody name,
@Part("mail") RequestBody mail,
@Part MultipartBody.Part image
);
【问题讨论】:
-
您可以使用不同签名的两种方法(一种带有图像参数,另一种没有),如果用户上传图像,您调用第一种方法,否则调用第二种方法
-
你是什么意思?我不明白你