Обработка ответов jsonObject и jsonArray с помощью Retrofit Call для одной и той же конечной точки - PullRequest
0 голосов
/ 10 декабря 2018

Исходя из параметров полезной нагрузки и запроса, одни и те же конечные точки могут отвечать либо JsonObject (если возвращается один объект), либо JsonArray (если возвращается несколько объектов).Как справиться с этим из того же метода?Можем ли мы использовать пользовательский конвертер в случае модернизации?

Метод обслуживания модернизации:

Call<Response> getData(@Path("token") String token, @FieldMap Map<String, Object> request);

Здесь Ответ может быть JsonObject или JsonArray.

Вызывается из другого метода:

public <?> getResponseFromApi(String token, RequestBody request) {
    Retrofit retrofit = this.requestApi.getRetrofitObject();
    ApiService service = retrofit.create(ApiService.class);
    Map<String, Object> map = objectMapper.convertValue(request, Map.class);
    Call<?> call = service.getData(token,map);
    return executeApiCall.executeApiCall(call);
}

Как мы можем справиться с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...