美文网首页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