改造,如何使用变量键解析JSON对象

时间:2015-11-12 14:51:12

标签: android json gson retrofit

首先,我知道自己的头衔很糟糕,因为我没有提出更好的建议。我很乐意接受建议。

我正在使用改造来从这种类型的api获取数据:@GET("users/{userid}")

它工作正常,我很高兴,问题是当我用@POST("users/widget")和id列表调用相同的api时。我有以下答案:

{
  "long_hash_id": {
    "_id": "long_hash_id"
    .......
  },
  "long_hash_id": {
    "_id": "long_hash_id",
    .....
  },
  ........
}

“long_hash_id”典型地是“525558cf8ecd651095af7954” 它对应于附加到它的用户的id。

当我没有使用改装时,我在流模式下使用Gson逐个获取每个用户。但我不知道怎么说改造。

希望我很清楚 提前谢谢。

-----------解决方案:

我以这种方式建立了界面:

@FormUrlEncoded
@POST(AppConstants.ROUTE_USER_GROUP)
Call<Map<String,User>> getUsers( @Field("ids") List<String> param, @QueryMap Map<String,String> options);

我只是给了我的ID列表。非常感谢你

1 个答案:

答案 0 :(得分:4)

Gson能够使用您发布的变量键来处理JSON对象。在这种情况下,您需要做的是声明Map<String, ModelClass>,其中ModelClass是您要表示的JSONObject的内容