仅在某些请求中使用改进@Expose

时间:2018-03-06 09:30:57

标签: android json gson retrofit

我在我的项目中使用Retrofit,我就像这样构建它:

httpClient = new OkHttpClient.Builder();
    httpClient.connectTimeout(10, TimeUnit.SECONDS)
            .writeTimeout(10, TimeUnit.SECONDS)
            .readTimeout(10, TimeUnit.SECONDS)
            .addInterceptor(logging);

    builder = new Retrofit.Builder()
            .baseUrl(BASE_URL)
            .addConverterFactory(GsonConverterFactory.create(new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create()))
            .client(httpClient.build());

    Retrofit retrofit = builder.build();

我有这样的模特:

@Expose(serialize = false)
private int id;

@Expose
private int gender;

@Expose
private long start;

@Expose
private long end;

.... other data

@Expose(serialize = false)
private int teacherServiceId;

我知道@Expose是如何工作的。

有一个问题,我需要在一个请求中序列化teacherServiceId。在其他我不需要它。

如何在不创建新模型类和Retrofit实例的情况下执行此操作?

0 个答案:

没有答案