Rxjava+Retrofit2上传文件带参数:参数自带引号问题解决
上传文件没问题。上传图文,也就是上传文字和图片的时候,用以下这个代码:@Multipart@POST("xxxxx/images/")Flowable<UpImgAndTextBean> upLoadImgAndText(@Part("title") String title,...
·
上传文件没问题。上传图文,也就是上传文字和图片的时候,用以下这个代码:
@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类型。
完。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)