【发布时间】:2025-12-29 14:05:06
【问题描述】:
我正在实现一个 Scala/Play API (apiA),它使用一个我无法控制的 API (apiB)。 ApiB 返回一个 JSON 响应,在某些情况下将 JSON 嵌入到字符串中。示例:
{
"name":"some_name",
"scores": "[[10,15]]",
"data": "{\"attr1\":\"value1\",\"attr2\":\"value3\"}"
}
ApiA 需要在将所有数据传递给客户端之前访问name 的值,并且应该将其作为正确的 JSON 提供给客户端。
我正在考虑将原始响应解析为
case class Response(name: String, scores: JsValue, data: JsValue)
或
case class Response(name: String, scores: Seq[Seq[Int]], data: Map[String, String])
现在,scores 和 data 被解析成什么类型并不重要,只要它不是包含 JSON 的字符串。
现在,如果 JSON 响应格式正确,则写入格式/读取/写入将很简单,但我有点想知道如何在解析为最终类型之前将内容转换为 JSON。
任何帮助将不胜感激。
【问题讨论】:
标签: json scala playframework