Retrofit2.0 Multipart 让文件可传可不传

文件上传

使用retrofit上传文件会遇到一个问题,后台写的接口是文件可传可不传,那我们@Multipart是必须上传一个文件,若不传,则报错java.lang.IllegalStateException: Multipart body must have at least one part.

解决方法:

第一种:


创建一个空Part

第二种:

MultipartBody.Part part = MultipartBody.Part.createFormData("",""); 

直接传入两个空字符串就可以了...不能传null;


Retrofit 源码

源码传null 会抛出异常,所以我们传空字符串就可以...

这样判断文件是否为空就可以了.

是空则创建一个空Part,不为空则传入文件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容