2
在我的代码中,我向服务器发出get请求来获取一些json,然后在发回它之前我想更新其中一个值。我知道,如果关键是在顶层我可以只写如何在scala中更新JsObject的嵌套密钥
val newConfig = originalConfig ++ Json.obj("key" -> newValue)
更新密钥,但是我不能想出一个很好的方法来更新它,如果我想改变的关键是在一对夫妇层
即。我的JSON看起来是这样的,我只想更新KEY5
{
"key1": "value",
"key2": {
"key3": "value",
"key4": {
"key5": "value",
"key6": "value"
}
}
}
有没有办法做到这一点,而不通过层更新它层? 即。
val key4 = originalKey4 ++ Json.obj("key5" -> newValue)
val key2 = originalKey2 ++ Json.obj("key4" -> key4)
val newJson = originalJson ++ Json.obj("key2" -> key2)
我想要更新的实际密钥是7层,所以这相当单调乏味。