美文网首页Android开发
retrofit @FieldMap 与 @Body 区别

retrofit @FieldMap 与 @Body 区别

作者: 菜鸟何时起飞 | 来源:发表于2019-06-26 14:52 被阅读0次

@FieldMap必须与 @FormUrlEncoded 一起配合使用
提交的Content-Type 为application/x-www-form-urlencoded

   @POST()
    @FormUrlEncoded
    <T> Observable<ResponseBody> executePost(
            @Url() String url,
            @FieldMap Map<String, Object> maps);

      Content-Type: application/x-www-form-urlencoded

@Body 提交的提交的Content-Type 为application/json; charset=UTF-8

   @POST()
    Observable<ResponseBody> executePostBody(
            @Url String url,
            @Body Object object);

 Content-Type: application/json; charset=UTF-8

如果使用别人的封装的网络框架 出现415 的情况 就可以考虑看是不是因为Content-Type不对,切换一下body与FieldMap 万一解决了呢!!!!

相关文章

网友评论

    本文标题:retrofit @FieldMap 与 @Body 区别

    本文链接:https://www.haomeiwen.com/subject/wueccctx.html