记录一下:Retrofit post json 通过@Body 无法传递参数给后 方式一: ------------------------------------------------------- @POST("xxxx/getBindHouseInfo") Observable<BaseResponse<EhecdHouse>> queryHouses(@Body RequestBody body); ------------------------------------------------------- HashMap<String, Object> map = new HashMap<>(); map.put("contactId", User.getInstance().getId()); map.put("loginName", User.getInstance().getLoginName()); RequestBody requestBody = RequestBody.create(MediaType.parse("Content-Type, application/json"), new JSONObject(map).toString()); mModel.queryHouses(requestBody) .compose(RxScheduler.Obs_io_main()).....
此种方式无法post过去,必须在拦截器处添加header或者在注解出多加@Headers("Content-Type: application/json")
方式二:
——————————————————-
@POST(“xxxx/getBindHouseInfo”)
Observable<BaseResponse<EhecdHouse>> queryHouses(@Body Param body);//Param 自定义的bean,包含参数
——————————————————-
自定义的bean中包含参数,直接post皆可以。
版权声明:本文为lifs419原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。