首页 > 解决方案 > 改造 Gson 反序列化。每个响应都需要它吗?

问题描述

我从新闻 api 得到一个看起来像这样的 json 响应

status": "ok",
"totalResults": 38,
"articles": [{
       "author": "Zoe Christen Jones",
       "title": "Skylar Mack, American teen jailed for violating quarantine in Cayman 
        Islands, gets reduced sentence - CBS News",
       "description": "Skylar Mack, ..."
}]

通常我会做一些类来代表它的每一个响应

data class NewsResponse(
        @SerializedName("status") var status: String? = null,
        @SerializedName("totalResult") var total: String? = null,
        @SerializedName("articles") var articles: List<Articles> = emptyList()
)

data class Articles(
        @SerializedName("author") var author: String? = null,
        @SerializedName("title") var title: String? = null,
        @SerializedName("description") var url: String? = null)

但是,假设我只想articles从根响应中获取,像这样注释它

data class NewsResponse(
            @SerializedName("articles") var articles: List<Articles> = emptyList()
    )

忽略我不想做的不必要的响应是一个好习惯吗?在这种情况下,我不想抓住statusand totalResponse

标签: javaandroidkotlingsonretrofit

解决方案


推荐阅读