【发布时间】:2016-01-27 15:07:22
【问题描述】:
例如我的 json 看起来像:
{
"data": [
{
"name": "one"
},
{
"name": "two"
}
]
}
例如,我有带有字段名称的对象用户。
是否有可能将数据数组解析为对象用户的写入方法?
类似
Call<List<User>> getUsers(@KeyPath("data"))
现在要做到这一点,我需要创建一个类似的包装类
public class UsersWrapper {
@SerializeName("data")
public ArrayList<User> users;
}
接下来我在服务中
public interface Service {
@GET("users")
Call<UsersWrapper> getUsers()
}
但我所有的请求只是响应数据而不是数组中的变量对象。
在这种情况下,我需要为任何数据请求创建包装器。痛:(
?
【问题讨论】:
-
我不明白这个问题。您的响应对象应该是
User的数组 -
我倾向于通过让调用返回
JsonObject来解决这个问题,然后将调用链接到使用gson 实例从JsonObject获取列表的转换器中。然后我会追踪 API 编写器,直到他们更改它。
标签: android json retrofit retrofit2