我的 circe 解码器如下所示。我确信我的情感解码器可以正常工作,因此下面不会包含它。
case class CryptoData(value: String, valueClassification: Sentiment)
Run Code Online (Sandbox Code Playgroud)
implicit val decoder: Decoder[CryptoData] = Decoder.instance { json =>
for {
value <- json.downField("data").get[String]("value")
valueClassification <- json.downField("data").get[Sentiment]("value_classification")
} yield CryptoData(value, valueClassification)
}
Run Code Online (Sandbox Code Playgroud)
我的 Json 看起来像这样
{
"name" : "Fear and Greed Index",
"data" : [
{
"value" : "31",
"value_classification" : "Fear",
"timestamp" : "1631318400",
"time_until_update" : "54330"
}
],
"metadata" : {
"error" : null
}
}
Run Code Online (Sandbox Code Playgroud)
我只是想要value和value_classification。可以看出,这些值位于一个数组中。
我怀疑 Circe 正在寻找解码 aList[data]但我不想创建 acase …