【发布时间】:2019-01-18 21:01:40
【问题描述】:
我有一个 Json 对象数组。所有这些对象都遵循以下两种结构之一: 第一个是这样的:
{
"uuid": "321,
"uuidType": "series",
"title": "a movie",
"segments": [
"movie"
],
"seriesIds": [
"123"
]
}
第二个是这样的:
{
"uuid": "1234",
"uuidType": "programme",
"title": "programme title",
"type": "movie",
"segments": [
"movies"
],
"programmeIds": [
"321"
]
}
但是,我想像这样将这些对象解析到同一个案例类中:
case class SearchResult(uuid: String, uuidType: String, title: String, segments: List[String], ids: List[String])
因此,对于第二种类型的对象,类型键和值将被忽略,来自第一个对象的 seriesIds 和来自第二个对象的 programIds 都将进入案例类的 ids 部分。但是我不知道该怎么做!我正在使用 Circe 对 json 进行解码/编码。
【问题讨论】:
-
尝试使用 circe 游标将
ids字段填充到已解析的 Json AST 中,然后再将其转换为您的类型。