我正在使用改造上传数据到网络服务,我得到相应的网络服务响应。上传数据具有以下结构。
并且响应包含以下结构。
正如您所看到的,上传数据和响应都包含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)
任何帮助将不胜感激。
答案 0 :(得分:2)
您应该为每个响应和请求创建一个模型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。