@Path
@FormUrlEncoded
@POST("/v1//yf/orderPayDetail/{orderId}")
Observable<PayInfo> getOrderPayInfo(@Path("orderId") long orderId, @FieldMap Map<String, String> map,
@Header("Cache-Control") String cacheControl);
url中的path可通过变量配置,如上orderId
@Body
如何传递Json字符串
我们知道retrofit直接传递的是一个bean对象,这有很多好处,那想直接传递Json字符串呢?
@POST("/passenger/delpassenger")
Observable<HandleResult> delPassenger(@Body String data, @Query("userid") long userid, @Query("token") String token);
当我将@Body设置为String,然后data里传入已经转好的Json字符串。
然后发现Json Text是这样的。
解决办法是:将要传递的json 用Map封装起来,然后交给Retrofit,效果是一样的。
@POST("/passenger/delpassenger")
Observable<HandleResult> delPassenger(@Body Map<String,String> data, @Query("userid") long userid, @Query("token") String token);