Rxjava+Retrofit2上传文件带参数:参数自带引号问题解决

上传文件没问题。上传图文,也就是上传文字和图片的时候,用以下这个代码:

@Multipart
@POST("xxxxx/images/")
Flowable<UpImgAndTextBean> upLoadImgAndText(
                                        @Part("title") String title, 
                                        @Part("content") String content,  
                                        @Part List<MultipartBody.Part> images);

 你会发现,这两个字符串的文本内容会自动带上了双引号……

废话不说,解决方法就是把字符串的参数封装成map,如下:

@Multipart
@POST("xxxxx/images/")
Flowable<UpImgAndTextBean> upLoadImgAndText(
                                        @PartMap Map<String, RequestBody> params,
                                        @Part List<MultipartBody.Part> images);

然后调用方法的时候,把这两个字符串参数封装一下,最后传这个params给它即可:

Map<String, RequestBody> params = new HashMap<>();
params.put("title",RequestBody.create(MediaType.parse("text/plain"), title));
params.put("content",RequestBody.create(MediaType.parse("text/plain"), content));

注:如果要传int类型的话需+“”转成String类型。

 

完。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值