说我有一些PARAMS从我们的API客户端发出这样的:如何筛选JSLookup/JSObject与斯卡拉玩库
val params = (request \ "params")
我想filter
他们并删除某些键/值。就像如果我得到:
{
"foo": "bar",
"hello": "world"
}
我想将它过滤到
{
"foo": "bar"
}
这里是我的WIP代码,但是,随着越来越多的先进Scala的人可能会告诉向右走,这是行不通的。
val params = (request \ "params").get.as[List[JsObject]]
val blacklistedParams = Seq("foo")
val approvedParams = params.filter((param: JsObject) => {
!blacklistedParams.contains(param)
})
也就是说第一行总是失败。我尝试过在各种类型中都做.get.as
,但总是会出错。对于Scala和类型,我还是一个新手。