Android技术知识

Retrofit 自定义Converter 转换器

2018-01-09  本文已影响0人  MrLgc

@POST("mine/getDynamicInfo")

Observable<String> getData(@Body JSONObject jsonObject);

//Observable<Model> getData(@Body JSONObject jsonObject);

//Observable<Model> getData(@Body String parameter );

我这面用的是Retrofit网络请求

当用@Body注解的时候("application/json; charset=UTF-8") 以json形式请求服务端,这两个方法都会触发

对应的Type 其实就是@body注解里面的类型,我们可以进行判断type做我们想要的处理,

这里Type就是我们的Observable<Model> getData(@Body JSONObject jsonObject),泛型的类型

我们就可以通过type进行判断转换我们想要的类型

对应了两个转化

@FormUrlEncoded

@POST("mine/getDynamicInfo")

Observable getString(@Field("page") String page);

这样写的话其实就是表单形式请求服务端

这样的话 

requestBodyConverter() 这个方法不会触发 只会触发responseBodyConverter()这个回掉方法

比较简单的说明下 

上一篇 下一篇

猜你喜欢

热点阅读