是否可以在retrofit2中选择一个请求参数?

时间:2017-11-07 06:00:45

标签: android retrofit2

我正在使用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
    );

1 个答案:

答案 0 :(得分:0)

请求API时,

@Rgv只需为Multipart.part图像值传递值。完成 。我以这种方式使用。希望对您有所帮助。在下面的代码中,我为文件图像传递了空值。并在有个人资料图片文件时传递图片文件。

request = RetrofitClient.getInstance().getMyApi().updateProfileAPI(
                    UtilsClass.convertStringToRequestbody(name),
                    UtilsClass.convertStringToRequestbody(email),null);