如何处理 Scala/Play 中的 JsValue

How to handle JsValue in Scala/Play

我正在尝试学习 Scala/Play 所以我创建了一个示例 api,它使用 WSRequest 连接到 GitHub 和 returns 一些基于用户 ID 的信息.我可以通过以下方式将此响应转换为 JsValue:

val response: JsValeu = result.json
Ok(json)

我在尝试操作 JsValue 时遇到问题,例如根据某些条件过滤值等?我需要将它转换为 JsObject 吗?我查看了 Play 文档,但不知道如何执行此操作。

JsValue的处理方式是什么?

谢谢

JsValue 表示任何类型的JSON数据实体,包括对象、数字、字符串等

如果您想过滤 JsObject 中的值,则必须将您的 JsValue "cast" 转换为 JsObject。喜欢:

val jsonObject: JsObject = response.as[JsObject]

然后你可以改变你喜欢的对象。

阅读有关 JsObject 和 JsValue 的文档,了解如何完成您想要完成的其余工作。