java - 改造 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()
)
忽略我不想做的不必要的响应是一个好习惯吗?在这种情况下,我不想抓住status
and totalResponse
。
解决方案
推荐阅读
- html - 在 imo 应用上打开聊天的 href 链接是什么?
- java - Android Studio 签名的 apk 未安装且不显示 Admob 广告
- reactjs - 带有钩子的函数组件中的数组未在 React 状态下更新
- javascript - ShadowDOM 内部的属性不变
- json - 在 vb.net 中将 json 对象作为正文添加到 http 请求中
- jquery - 为什么'javascript_pack_tag'只适用于'body'而不是html'head'(Rails 6和webpack)
- wpf - WPF中的单选按钮导航问题?
- hystrix - Hystrix 后备实施是强制性的吗?
- java - 日光节约的 JDBC Mysql 时区问题
- c# - 我可以在并行线程中更新一个实体 c#