Модифицировать POST-запрос - анализ двух объектов JSON с одинаковыми именами - PullRequest
0 голосов
/ 15 мая 2018

Я использую модификацию для загрузки данных в веб-сервис и соответственно получаю ответ от веб-сервиса.Данные для загрузки имеют следующую структуру.

enter image description here

, а ответ содержит следующую структуру.

enter image description here

Как вы видите, загружаемые данные и ответ оба содержат data именованный объект.Итак, мой вопрос, как я могу сделать Model Class для обработки этого объекта запроса и ответа data?.

Я делаю это следующим образом, но выдает ошибку multiple fields having same name.

data class PostDataModel(var data: PostDataFieldsModel,var status: String, var message: String,
                     @SerializedName("data") var data1: PostResponseDataFieldsModel)

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 15 мая 2018

Вы должны создать модель POJO для каждого ответа и запроса. Например, у вас может быть следующая конечная точка при модернизации:

@Headers({"Content-Type: application/json", "Accept: application/json"})
@POST("/login")
Call<Response<LoginResponse>> login(
        @Body LoginRequest request);

LoginRequest.java

public class LoginRequest {
    DataModel data;

//getters and setters

}

LoginResponse.java

public class LoginResponse {

   Integer status;
   String message;
   SecondDataModel data;

  //getters and setters
}

Вы DataModel класс должны моделировать поле данных в запросе. И ваш SecondDataModel должен смоделировать тот, который указан в ответе. Если они имеют одинаковые данные, вы можете использовать один и тот же POJO.

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